Android根据经纬度获取位置信息
16lz
2021-01-23
Android内部是支持这个操作的,不需要借助任何的第三方工具
主要就是Geocoder这个类。
下面是工具类全部代码。
import android.content.Context;import android.location.Address;import android.location.Geocoder;import android.util.Log;import android.widget.Toast;import java.io.IOException;import java.util.List;public class GetAddressUtil { Context context; public GetAddressUtil(Context context) { this.context = context; } public String getAddress(double lnt , double lat){ Geocoder geocoder = new Geocoder(context); boolean falg = geocoder.isPresent(); Log.e("thistt", "the falg is " + falg); StringBuilder stringBuilder = new StringBuilder(); try { //根据经纬度获取地理位置信息---这里会获取最近的几组地址信息,具体几组由最后一个参数决定 List addresses = geocoder.getFromLocation(lat , lnt, 1); if (addresses.size() > 0) { Address address = addresses.get(0); for (int i = 0; i < address.getMaxAddressLineIndex(); i++) { //每一组地址里面还会有许多地址。这里我取的前2个地址。xxx街道-xxx位置 if(i == 0) { stringBuilder.append(address.getAddressLine(i)).append("-"); } if(i == 1){ stringBuilder.append(address.getAddressLine(i)); break; } }// stringBuilder.append(address.getCountryName()).append("_");//国家// stringBuilder.append(address.getFeatureName()).append("_");//周边地址// stringBuilder.append(address.getLocality()).append("_");//市// stringBuilder.append(address.getPostalCode()).append("_");// stringBuilder.append(address.getCountryCode()).append("_");//国家编码// stringBuilder.append(address.getAdminArea()).append("_");//省份// stringBuilder.append(address.getSubAdminArea()).append("_");// stringBuilder.append(address.getThoroughfare()).append("_");//道路// stringBuilder.append(address.getSubLocality()).append("_");//香洲区// stringBuilder.append(address.getLatitude()).append("_");//经度// stringBuilder.append(address.getLongitude());//维度 Log.d("thistt", "地址信息--->" + stringBuilder); } } catch (IOException e) { // TODO Auto-generated catch block Toast.makeText(context, "报错", Toast.LENGTH_LONG).show(); e.printStackTrace(); } return stringBuilder.toString(); }}
更多相关文章
- Android开发错误信息与解决方案汇总
- Android判断Wlan信号强弱及wlan管理信息
- Android监控外接USB设备和获取USB等设备的详细信息
- 根据文件名称修改安卓默认的蓝牙接收文件地址
- Android 中如何获取editText文本信息
- Android WebView如何隐藏地址栏,用WebView 来显示网页内容
- Android获取已安装应用信息(图标,名称,版本号,包)
- 我会经常在这个地址下面共享自己保存的几本书