Android高德地图定位功能,在部分机型定位成功却不返回地址信息处理方案。

Android高德地图定位功能,在部分机型定位成功却不返回地址信息处理方案。最近做了一个关于定位相关的项目,使用的高德地图的API,结果却发生了一些问题,特此记录一下。华为7.0,vivo8.0,小米8.0,vivo9.0,oppo9.0,红米6.0,全都没有问题。但是却在oppoR9机型出现了定位成功却不返回定位详细地址,网上找了好多方案都不行,最后没办法了想了一招,特此记录。if (aM...
摘要由CSDN通过智能技术生成

Android高德地图定位功能,在部分机型定位成功却不返回地址信息处理方案。


最近做了一个关于定位相关的项目,使用的高德地图的API,结果却发生了一些问题,特此记录一下。
华为7.0,vivo8.0,小米8.0,vivo9.0,oppo9.0,红米6.0,全都没有问题。但是却在oppoR9机型出现了定位成功却不返回定位详细地址,网上找了好多方案都不行,最后没办法了想了一招,特此记录。

if (aMapLocation != null && aMapLocation.getErrorCode() == AMapLocation.LOCATION_SUCCESS )
//首先这个判断是没有任何问题的,返回的也是定位成功,并且返回了经纬度。

然后接着往下看

aMapLocation.getAdCode()	//发现数据为空
aMapLocation.getPoiName()	//发现数据为空
aMapLocation.getCityCode()	//发现数据为空

定位成功了却还是没有数据是怎么回事呢?
最后试了很多办法都不行,最后在Demo无意间看到这个地址编码的代码,只好拿出来使用,结果就好了,谁也不知道是怎么回事?有大佬知道的话可以留言告诉我一下。
下面是完整解决问题代码

private GeocodeSearch geocoderSearch =new GeocodeSearch(getmView().getmActivity());

//显示定位完成
if (aMapLocation != null && aMapLocation.getErrorCode() == AMapLocation.LOCATION_SUCCESS ) {
		//判断定位完成只给返回经纬度,却不返回定位详细地理信息时
 		if (EmptyUtils.isEmpty(aMapLocation.getAdCode())){
 			//根据经纬度去进行查询地理信息
 			 LatLonPoint point =new LatLonPoint(aMapLocation.getLatitude(),aMapLocation.getLongitude());
                                Regeo
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值