高德定位SDK踩坑-高精度模式下获取不到GPS定位(无网络环境)
关键字:定位模式 高精度模式 GPS定位 无网络
一句话描述问题:高精度模式在断网环境下不可靠。有几率重复报错或使用缓存定位,不使用GPS定位。
一句话解决问题:无网络环境使用设备模式、有网络环境使用高精度模式。
踩坑记录
测试平台
高德定位SDK版本
implementation 'com.amap.api:3dmap:9.1.0'
implementation 'com.amap.api:location:6.0.1'
测试手机
机型 Mi 11 Lite
系统: MIUI 13.0.8
Android版本:12
网络情况
关闭网络信号和wifi网络,模拟无网络环境。
卫星信号
站在空旷处,GPS信号良好。周边其他设备GPS信号良好。
问题描述
在所有配置正确的情况下,高精度定位模式在断网环境下,频繁出现不返回GPS定位,而是直接输出错误日志的情况。日志会一直弹出网络异常的提示,不会取获取GPS定位。报错日志如下:
如果在断网前打开过一段时间的网络,那有时候是可以拿到GPS定位的。日志显示,刚打开定位的时候会有一次网络异常提示,接着便拿到了gps信号。具体日志如下:
不过过了一段时间之后,又开始不拿GPS定位了。日志报错中显示网络定位失败,要我们检查权限或者sim卡。日志如下: