首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >FusedLocationProvider --如果定位模式为“仅限设备”,是否可以获取位置?

FusedLocationProvider --如果定位模式为“仅限设备”,是否可以获取位置?
EN

Stack Overflow用户
提问于 2018-02-22 14:30:05
回答 1查看 1.6K关注 0票数 5

我一直在玩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。这似乎是一个巨大的设计缺陷,如果这是为了更好的抽象之上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-26 16:54:18

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

代码语言:javascript
运行
复制
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (locationManager != null && locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
   requestLocationUpdates();
} else {
   //Location request code
}

下面是我所做的一个结合了这项技术的示例项目:

improved

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48929941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档