
最后更新时间: 2021年06月11日
获取定位数据之前,需要在 AndroidManifest.xml 文件中进行权限设置,确保定位功能可以正常使用。
第 1 步,配置AndroidManifest.xml
首先,声明Service组件
请在application标签中声明service组件,每个app拥有自己单独的定位service。
然后,声明权限
Android 6.0及以上系统可以参考Android 6.0权限说明章节。
最后,设置高德Key
在application标签中加入:
点我获取Key。
点我查看Key注册时必要数据SHA1和包名的获取方法。
第 2 步,初始化定位
请在主线程中声明AMapLocationClient类对象,需要传Context类型的参数。推荐用getApplicationContext()方法获取全进程有效的context。
第 3 步,配置参数并启动定位
配置单次定位或连续定位也在此处,请仔细阅读。
创建AMapLocationClientOption对象
AMapLocationClientOption对象用来设置发起定位的模式和相关参数。
选择定位场景
说明:该部分功能从定位SDK v3.7.0开始提供。如果开发者选择了对应的定位场景,那么则不用自行设置AMapLocationClientOption中的其他参数,SDK会根据选择的场景自行定制option参数的值,当然开发者也可以在基础上进行自行设置。实际按最后一次设置的参数值生效。
目前支持3种定位场景的设置:签到、出行、运动。默认无场景。
选择定位模式
高德定位服务包含GPS和网络定位(Wi-Fi和基站定位)两种能力。定位SDK将GPS、网络定位能力进行了封装,以三种定位模式对外开放,SDK默认选择使用高精度定位模式。
高精度定位模式:会同时使用网络定位和GPS定位,优先返回最高精度的定位结果,以及对应的地址描述信息。
低功耗定位模式:不会使用GPS和其他传感器,只会使用网络定位(Wi-Fi和基站定位);
仅用设备定位模式:不需要连接网络,只使用GPS进行定位,这种模式下不支持室内环境的定位,需要在室外环境下才可以成功定位。注意,自 v2.9.0 版本之后,仅设备定位模式下支持返回地址描述信息。
设置单次定位
如果您需要使用单次定位,需要进行如下设置:
自定义连续定位
SDK默认采用连续定位模式,时间间隔2000ms。如果您需要自定义调用间隔:

评论列表