【问题标题】:Location.getProvider always return "fused" not GPS or NetworkLocation.getProvider 总是返回“融合”而不是 GPS 或网络
【发布时间】:2015-03-23 19:32:18
【问题描述】:

我正在使用融合位置 API:

        locationrequest = LocationRequest.create();
        locationrequest.setInterval(interval);
        locationrequest.setFastestInterval(interval);
        locationrequest.setSmallestDisplacement(0);

        locationrequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);

        LocationServices.FusedLocationApi.requestLocationUpdates(locationClient, locationrequest, this);

每当我得到一个位置时,我都会执行 loc.getProvider 并且总是得到字符串“Fused”。

我期待网络与 GPS 或其他一些迹象。

有什么想法吗?

【问题讨论】:

    标签: android android-location


    【解决方案1】:

    这是 FusedLocationApi 的预期行为 - 它结合服务以减少电力使用和其他各种原因。

    如果您需要使用特定的提供商,您需要http://developer.android.com/reference/android/location/package-summary.html

    正如该页面所说,这不是获取位置的推荐方式。

    如果您对处理返回位置的准确性感兴趣,最好逐个更新地执行此操作 - 使用 Location.getAccuracy()

    【讨论】:

    • 谢谢,我想要融合的 api 来获取位置。但我想知道位置是来自 GPS 还是网络,因为每个人的准确度不同,我想以不同的方式处理位置。
    • 融合位置提供者的全部意义在于,它不会仅向您提供来自单个提供者的信号 - 您获得的每个位置都可能具有来自所有可用提供者的信息/更正。
    猜你喜欢
    • 1970-01-01
    • 2014-03-03
    • 2019-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-09
    • 1970-01-01
    • 2016-11-06
    相关资源
    最近更新 更多