android - 如何 ACCESS_FINE_LOCATION 保持 GPS 关闭?

标签 android gps locationmanager

我想从 NETWORK_PROVIDER 获取准确位置,同时关闭 GPS 以节省电量。这似乎是不可能的,因为 android,当指定 ACCESS_FINE_LOCATION 时,即使没有向 GPS_PROVIDER 请求位置,也会打开 GPS。

我已经添加了:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

进入 list 。为了避免 android 混淆准确位置,我需要它。

我只使用 NETWORK_PROVIDER 而不是 GPS_PROVIDER 注册了更新:

myLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 
        60000, 0, locationListener);

无论如何,GPS 都会打开。我怎样才能避免它(不强制用户禁用 GPS,这确实有效但不受欢迎)?

最佳答案

听起来很奇怪,如果你没有从 gps-provider 请求位置更新,它不应该启动 GPS。

不过,让我给你一条建议 - 不要指望网络提供商能为你提供“良好”的准确性,除非你使用的是谷歌知道其位置的 wifi。

基于手机信号塔的定位通常精度约为 500 - 2000 米,在市中心可能为 3-500 米。

关于android - 如何 ACCESS_FINE_LOCATION 保持 GPS 关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13790127/

相关文章:

android - 如何将 Material 设计风格设置为禁用 EditText (android)?

javascript - 为什么 Facebook 登录无法在 Android 上使用 PhoneGap?

android - LocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) 不可靠,为什么?

android - 使用 LocationManager 时请求权限

android - android 8.1.0 手机屏幕关闭时 BLE 扫描停止

android - Gradle:任务 compileReleaseAidl 执行失败

ios - 使用allowDeferredLocationUpdatesUntilTraveled 时是否可能出现乱序didUpdateLocations

android - 如何获得未过时的位置?

ios - 如何添加指向 map 上图钉的 GPS?

ios - 当用户 ios 已接受位置权限时,再次请求用户位置权限