书生网站wordpress群发文章
news/
2025/9/29 8:57:06/
文章来源:
书生网站,wordpress群发文章,数字营销经典案例,郑州小程序开发报价1、到高德开放平台申请#xff0c;获取key
高德开放平台#xff1a;https://lbs.amap.com/ 2、下载高德定位及地址搜索SDK:https://download.csdn.net/download/meixi_android/10845407 3、项目绑定高德SDK
#xff08;1#xff09;配置key meta-data android:name获取key
高德开放平台https://lbs.amap.com/ 2、下载高德定位及地址搜索SDK:https://download.csdn.net/download/meixi_android/10845407 3、项目绑定高德SDK
1配置key meta-data android:namecom.amap.api.v2.apikeyandroid:valuec8f6c5070cd7fd3ece3b50b342218487 /service android:namecom.amap.api.location.APSService/service
/application
2activity实现定位接口
implements AMapLocationListener
//实现方法
Override
public void onLocationChanged(AMapLocation aMapLocation) {}
3已知地址获取经纬度方法 private void getLatlon(String cityName){GeocodeSearch geocodeSearchnew GeocodeSearch(this);geocodeSearch.setOnGeocodeSearchListener(new GeocodeSearch.OnGeocodeSearchListener() {Overridepublic void onRegeocodeSearched(RegeocodeResult regeocodeResult, int i) {}Overridepublic void onGeocodeSearched(GeocodeResult geocodeResult, int i) {if (i1000){if (geocodeResult!null geocodeResult.getGeocodeAddressList()!null geocodeResult.getGeocodeAddressList().size()0){GeocodeAddress geocodeAddress geocodeResult.getGeocodeAddressList().get(0);double latitude geocodeAddress.getLatLonPoint().getLatitude();//纬度double longititude geocodeAddress.getLatLonPoint().getLongitude();//经度String adcode geocodeAddress.getAdcode();//区域编码Log.e(lgq地理编码, geocodeAddress.getAdcode());Log.e(lgq纬度latitude,latitude);Log.e(lgq经度longititude,longititude);Log.i(lgq,dddwwwlongititude);}else {Toast.makeText(MainActivity.this,地名出错,Toast.LENGTH_SHORT).show();
// ToastUtils.show(context,地址名出错);}}}});GeocodeQuery geocodeQuerynew GeocodeQuery(cityName.trim(),29);geocodeSearch.getFromLocationNameAsyn(geocodeQuery);}
测试数据
getLatlon(东莞市东城街道温塘横岭工业区二街38号);
结果
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经度longititude: 113.816161 4、计算两个坐标的距离
LatLng latLng2new LatLng(23.025845,113.752532);
LatLng latLngnew LatLng(23.025845,113.772532);
float distance AMapUtils.calculateLineDistance(latLng,latLng2);
float qianmifload (float) distance/1000;
Log.i(lgq,sssround(qianmifload,2) 千米); 四舍五入到两位小数
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();
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/921601.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!