2013-02-09 124 views
0

如何将经纬度转换为邮政地址。我不能够使用的MapView获得geopoint.I想经纬度转换中的地址不使用的MapView的如何将经纬度转换为邮政地址

+0

看看这个API https://developers.google.com/maps/documentation/geocoding/ – Ahmed 2013-02-09 07:51:30

+0

并非所有的经/纬度可转换为一个地址,因为他们没有在谷歌的数据库记录。但是你可以用它来找到距离最近的地方。 – itsols 2013-02-09 07:55:46

+0

我们无法使用mapview来获取geopont.then如何获取地理位置并将其转换为地址或我如何直接将地理位置的经度和纬度转换为 – 2013-02-09 08:45:02

回答

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"; 
    } 
} 
+0

谢谢您,先生,您的宝贵回复。但先生,我不知道如何创建或启动地理编码器的服务,请你告诉我这样做 – 2013-02-09 11:32:28

+0

@kirankirve没有特殊的服务是必需的,这只是一种方法(见更新的答案)。此方法可能需要一些时间才能执行。 – 2013-02-09 15:03:06

+0

它的工作感谢您先生..........当我创建AVD到谷歌API然后它的工作和返回地址 – 2013-02-11 05:29:42

0

转到项目属性>安卓>设置项目的构建目标,以谷歌