一般来讲,通过gps获取到经纬度坐标以后,要继续深入的获取该经纬度坐标的城市、街道与精度(误差)等信息。
private String getAddressbyGeoPoint() {
// 自经纬度取得地址
StringBuilder sb = new StringBuilder();
Geocoder gc = new Geocoder(getBaseContext(), Locale.getDefault());
List<Address> lstAddr = null;
try {
lstAddr = gc.getFromLocation(location.getLatitude(), location.getLongitude(), 1);
} catch (IOException e) {
Log.e("HangzhouBike", e.getMessage());
}
if (lstAddr != null && lstAddr.size() > 0) {
Address addr = lstAddr.get(0);
if (addr.getAddressLine(1) != null)
sb.append(addr.getAddressLine(1)).append(" ");
if (addr.getAddressLine(2) != null)
sb.append(addr.getAddressLine(2)).append(" ");
sb.append(" ±" + location.getAccuracy() + "米");
}
return sb.toString();
}