gpt4 book ai didi

android - FusedLocationProvider - 如果位置模式为 "Device Only",有什么方法可以获取位置?

转载 作者:太空宇宙 更新时间:2023-11-03 10:59:10 24 4
gpt4 key购买 nike

我一直在研究 FusedLocationProvider,我发现如果您手机的定位模式设置为“仅设备”(在设置中更改 - 这意味着仅启用 GPS 定位。不使用 Wifi 网络和手机信号塔以提高准确性),然后我无法找到一种方法让 FusedLocationProvider 在不要求用户将其更改为高精度(始终调用 onResolutionRequired)的情况下为您提供位置。

所有四个 LocationRequest 优先级都不起作用:

  1. PRIORITY_HIGH_ACCURACY - 要求切换到“高”定位模式准确性”
  2. PRIORITY_BALANCED_POWER_ACCURACY - 同上
  3. PRIORITY_LOW_POWER - 同上
  4. PRIORITY_NO_POWER - 只是没用

如果设备处于此模式,是否无法通过 FusedLocationProvider 获取位置?我很确定您可以通过 android.location.LocationManager 获取它。如果这意味着在它之上更好地抽象,那似乎是一个巨大的设计缺陷..

最佳答案

您确实需要使用 LocationManager 来检测这一点,我同意这确实很愚蠢。使用以下代码:

LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (locationManager != null && locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
requestLocationUpdates();
} else {
//Location request code
}

这是我制作的一个包含此技术的示例项目:

https://github.com/gavingt/basic_location_improved

关于android - FusedLocationProvider - 如果位置模式为 "Device Only",有什么方法可以获取位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48929941/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com