Android Studio调用百度地图定位到大西洋几内亚湾 解决方法

在做百度地图定位时发现直接定位到大西洋海域去了,飞到了大西洋几内亚湾~

检查后发现是经纬度获取失败

后来发现是因为,安卓6以上需要动态申请权限

翻了一下官方的开放文档,并没有发现解决方法

Google在Android 6.0中引入了动态权限获取机制(Runtime Permission),使得Android的权限管理更加严格完善。

动态权限获取要求开发者在调用涉及相关权限的代码时,使用系统接口来动态得申请相应权限。定位SDK涉及权限即在此范畴中。

在未获取到定位权限情况下,定位SDK获取到的定位依据(基站、WI-FI)均为空值,因此无法有效定位,定位服务会返回错误码167。

 

试着添加了两条权限,问题解决~ 在官方文档里并没有这两条

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_GPS"/>

成功定位

物联沃分享整理
物联沃-IOTWORD物联网 » Android Studio调用百度地图定位到大西洋几内亚湾 解决方法

发表评论