android 高德地图 地理编码 定位不准确 有偏差

用高德地图搜索地铁站时,搜的小南门地铁站,结果大头针定位到了世纪大道

android 高德地图 地理编码 定位不准确 有偏差

因为我是用到了正地理编码,就是把String类型的地址转化为经纬度,然后大头针根据经纬度绘制

经过调试,我发现传的地址没错,不过到地理位置查询回调时出错了,它只拿到了省市区,详细地址没拿全

然后我又换了别的城市地点搜索,发现大头针可以定位的到。唯有搜地铁站,大头针定位不准确

我就想是不是上海市黄浦区小南门(地铁站)是有"(" ")",所以搜不到,然后我去掉了括号,果然定位准确了

附上代码,其实很简单,就是把详细地址里面的特殊符号去掉,正地理编码中有特殊符号,转化的经纬度就会不准确

 

String remove_str=address.replaceAll("[^0-9a-zA-Z\u4e00-\u9fa5.,,。?“”]+","");

输出:上海市黄浦区小南门地铁站

?