Android 定位SDK如何检测Android手机的定位权限?

当您使用高德地图 Android 定位 SDK 遇到权限问题时,可以阅读以下内容,会对您有一些帮助。

Android 6.0 之前的系统级定位权限检测接口存在权限判断失准的问题,这导致如果单纯依赖系统接口进行定位权限判断会造成大量设备上定位权限检测不准的情况出现。

所以在 Android 定位SDK 2.9.0 版本中增加了错误码13,错误码13包含一种判断和两层意思:

一种判断是校验多种定位数据源是否存在(或的关系);两层意思是指13本身有可能代表设备定位权限缺失,有可能代表设备定位数据源缺失。因为当定位权限缺失时(无论系统级定位权限检测接口是否准确返回)定位数据源一定会缺失,反之则不是。

如果SDK明确检查出定位权限缺失时会返回错误码12,如果没有检查出来定位权限缺失,但此时所有定位数据源又都不可用,则会返回13。无论返回的是12或者是13,都说明设备现在所处环境不足以完成定位功能。

所以您可以对定位 SDK 的错误码12和13做联合判断,达到检测定位权限的效果。

如以上内容仍未解决您的问题,请创建工单
新用户
福利
示例
中心
常见
问题
智能
客服