【发布时间】: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