0

如何将纬度和经度转换为邮政地址。我无法使用 mapview 获取地理点。我想在不使用 mapview 的情况下转换地址中的纬度和经度

4

3 回答 3

0

Android有GeoCoder这个类:

public String getAddress(double latitude, double longitude){

   if (Geocoder.isPresent()) {
       try {
          Geocoder geocoder = new Geocoder(mContext, Locale.getDefault());
          List<Address> addresses = geocoder.getFromLocation(latitude,longitude,1);

          if(addresses != null && addresses.size() > 0) {
            Address first = addresses.get(0);
            StringBuilder sb = new StringBuilder();

            if(first.getMaxAddressLineIndex() > 0){
              sb.append(first.getAddressLine(0) + ", ");
            }

            sb.append(first.getLocality() + ", ");
            sb.append(first.getCountryName());

            return sb.toString();

        } catch (Exception e) {
          Log.e("MyAPP", "Reverse geo lookup failed", e);
          return "Unavailable"
        }
    } else {
      return "unavailable";
    }
 }
于 2013-02-09T09:22:05.647 回答
0

这就是所谓Reverse Geocoding的,您可以使用许多服务,包括GoogleYahooBing

请参阅本文以获取免费的地理编码服务

于 2013-02-09T08:45:15.530 回答
0

转到项目属性 > Android > 将项目构建目标设置为 Google

于 2014-02-18T06:47:22.220 回答