Android 通过高德地图获取地址的经纬度
不廢話,需求:輸入一個地址,獲取到它的經(jīng)緯度,怎么辦?
1、到高德開放平臺申請,獲取key
高德開放平臺:https://lbs.amap.com/
?
?2、下載高德定位及地址搜索SDK:https://download.csdn.net/download/meixi_android/10845407
?
3、項目綁定高德SDK
1)配置key
<meta-data android:name="com.amap.api.v2.apikey"android:value="c8f6c5070cd7fd3ece3b50b342218487" /><service android:name="com.amap.api.location.APSService"></service></application>
?
(2)activity實現(xiàn)定位接口
implements AMapLocationListener//實現(xiàn)方法
@Overridepublic void onLocationChanged(AMapLocation aMapLocation) {}(3)已知地址獲取經(jīng)緯度方法:
?
測試數(shù)據(jù):
getLatlon("東莞市東城街道溫塘橫嶺工業(yè)區(qū)二街38號");結(jié)果:
12-12 13:51:52.555 21394-21394/com.tianxin.mapclient.liteapp E/lgq地理編碼: 441900
12-12 13:51:52.555 21394-21394/com.tianxin.mapclient.liteapp E/lgq緯度latitude: 23.036034
12-12 13:51:52.556 21394-21394/com.tianxin.mapclient.liteapp E/lgq經(jīng)度longititude: 113.816161
?
如果沒有出現(xiàn)數(shù)據(jù),看看? ? ? ? ? ? public void onGeocodeSearched(GeocodeResult geocodeResult, int i) 返回的i值是不是1008,如果是,說明你的appkey和你在高德地圖申請的appkey不一樣,注意編譯的keyStore要和高德地圖的一樣。如果用Android studio 直接運行是用的Android studio自帶的debug.keystore,它的默認位置在?$HOME/.android/debug.keystore,例如我的debug.keystore就在???C:\Users\devil\.android\debug.keystore? 。再我們正式發(fā)布項目的時候是不能使用debug.keystore的。
?
4、計算兩個坐標的距離
LatLng latLng2=new LatLng(23.025845,113.752532);LatLng latLng=new LatLng(23.025845,113.772532);float distance = AMapUtils.calculateLineDistance(latLng,latLng2);float qianmifload =(float) distance/1000;Log.i("lgq","sss===="+round(qianmifload,2)+" 千米");四舍五入到兩位小數(shù)
public static float round(float v, int scale)
{
? ? if (scale < 0)
? ? ? ? throw new IllegalArgumentException("The scale must be a positive integer or zero");
? ? BigDecimal bgNum1 = new BigDecimal(Float.toString(v));
? ? BigDecimal bgNum2 = new BigDecimal("1");
? ? return bgNum1.divide(bgNum2, scale, BigDecimal.ROUND_HALF_UP).floatValue();
? ? // return b.setScale(scale, BigDecimal.ROUND_HALF_UP).floatValue();
}
?
?
以后都只會寫這種有深度的文章了,不會像之前寫一些Android 控件,系統(tǒng)api的使用這些簡單的內(nèi)容。因為寫了很多,不僅沒有對技術(shù)提升有幫助,還浪費了很多時間。
?
?
總結(jié)
以上是生活随笔為你收集整理的Android 通过高德地图获取地址的经纬度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 极广推送接入
- 下一篇: Android sharedPrefer