高德地图的奇葩

单次定位,无法销毁,总是周期定位;周期定位设置的时间间隔总是无法生效;只因本人未扣demo直接从网上copy的就这么悲剧···

然后今天拔了一下官方demo,瞬间就解决掉了,尴尬的是我瞅来瞅去,都一样,就是顺序有些微差异,真是醉了

单次定位:

private AMapLocationClientOption getDefaultOption()
{
   // 初始化AMapLocationClientOption对象
   AMapLocationClientOption mLocationOption = new AMapLocationClientOption();
   // 设置定位模式为AMapLocationMode.Hight_Accuracy,高精度模式。
   mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
   // 获取一次定位结果:
   mLocationOption.setOnceLocation(true);
   // 获取最近3s内精度最高的一次定位结果:
   mLocationOption.setOnceLocationLatest(true);
   // 开启缓存机制
   mLocationOption.setLocationCacheEnable(true);
   return mLocationOption;
}
周期定位:

private void resetOption()
{
   // 设置是否需要显示地址信息
   locationOption.setNeedAddress(true);
   /**
    * 设置是否优先返回GPS定位结果,如果30秒内GPS没有返回定位结果则进行网络定位 注意:只有在高精度模式下的单次定位有效,其他方式无效
    */
   locationOption.setGpsFirst(false);
   // 设置是否开启缓存
   locationOption.setLocationCacheEnable(true);
   // 设置是否单次定位
   locationOption.setOnceLocation(false);
   // 设置是否等待设备wifi刷新,如果设置为true,会自动变为单次定位,持续定位时不要使用
   locationOption.setOnceLocationLatest(false);
   // 设置是否使用传感器
   locationOption.setSensorEnable(false);
   // 设置是否开启wifi扫描,如果设置为false时同时会停止主动刷新,停止以后完全依赖于系统刷新,定位位置可能存在误差
   // 设置发送定位请求的时间间隔,最小值为1000,如果小于1000,按照1000   locationOption.setInterval(5000);
   // 设置网络请求超时时间
   locationOption.setHttpTimeOut(30000);
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值