【问题标题】:"Location method" does not change in Android O devices when grant location permissions授予位置权限时,Android O 设备中的“位置方法”不会更改
【发布时间】:2019-04-15 18:36:56
【问题描述】:

我有这个应用程序请求位置权限以使用 Google API 服务。我注意到当我遇到以下情况时会出现奇怪的行为:

1.- Android O 设备。 2.- 必须启用应用位置权限。 3.- 设备位置权限必须打开。 4.- 设备定位方法必须设置为“高精度”以外的位置(可以是“省电”或“仅限手机”)。

在应用程序中,在我的 Fragment 中,我将 LocationRequest 对象设置为优先级:PRIORITY_HIGH_ACCURACY,Android 将显示弹出窗口通知用户必须授予位置权限。这里的问题似乎是,由于设备定位已经打开,Android 没有做任何事情,也没有改变定位方法,所以定位设置仍然不满意,所以它一直显示弹出请求权限。 有趣的是,如果您的定位方法是“省电”或“仅电话”,但设备定位功能已关闭,则之前的练习可以正常工作,打开定位并将定位方法更改为高精度。

这是 Android O 的限制吗?

注意:Android P 没有这个问题,因为他们在位置设置中去掉了“定位方法”。

【问题讨论】:

    标签: android


    【解决方案1】:

    在 android 8.0 和 8.1 设备中存在相同的问题。 我通过将定位模式更改为省电模式解决了这个问题。

    mLocationRequest.setPriority(LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-28
      • 2021-02-14
      • 2021-01-22
      • 2017-05-30
      • 1970-01-01
      • 2021-03-22
      • 2018-02-05
      • 2020-08-17
      相关资源
      最近更新 更多