所有文档
开发指南
在Android 6.0之后,Android系统增加了动态权限授予的控制,定位权限需用户确认后,App才能拿到如基站、WIFI等信息, 从而实现定位。
在Android系统升级到7.0之后,我们发现,即使用户授予了App定位权限,App依然存在无法定位成功的问题。追查原因为: 授予权限与初始化位置相关类之间存在时续逻辑问题,即如果先初始化如WifiManager、TelephonyManager, 再请求确认定位权限,则即使用户确认可以授予App定位权限,App后续仍然拿不到基站、WIFI等信息, 从而无法定位;反之,则可以在授予权限之后正常使用定位。
针对这个情况,定位SDK自v7.2版本起,新增加了重启接口,LocationClient.reStart(), 您可以在用户确认授予App定位权限之后,调用该接口,定位SDK将会进行重新初始化的操作, 从而规避上述问题。您如果存在长时间后台定位的需求,推荐在应用回到前台的时候调用一次该接口, 我们了解到有些手机系统会回收长时间后台获取用户位置的位置权限。
上一篇
下一篇
本篇文章对您是否有帮助?