按名称获取位置的坐标

时间:2012-12-18 16:13:28

标签: android google-maps-api-3 coordinates geocoding

我想在我的Android应用中获取给定位置名称的经度和纬度值。我知道Google有一个地理编码API,但它似乎强制我在Google地图上显示结果:

  

地理编码API只能与Google地图结合使用;   禁止在地图上显示地理编码结果。   from here

那么有没有其他方法来接收位置名称的坐标?或者我可能没有正确理解TOU?

3 个答案:

答案 0 :(得分:2)

你可以

Geocoder geocoder = new Geocoder(<your context>);  
List<Address> addresses;
addresses = geocoder.getFromLocationName(<String address>, 1);
if(addresses.size() > 0) {
  double latitude= addresses.get(0).getLatitude();
  double longitude= addresses.get(0).getLongitude();
}

参考https://stackoverflow.com/a/9698408/2458192

答案 1 :(得分:0)

地理编码和反向地理编码API应该能够为您提供帮助。

但无论如何雅虎!有非常好的Geocoding API,它甚至可以给你JSON的响应。

我已经尝试过它们并且它们可以完美地用于这样的用例。

答案 2 :(得分:0)

没有Google's Geocoding API / google maps / any Maps API,使用位置名称获取位置坐标是not possible。甚至,yahoo API doesn't give full support表示所有地理位置名称。在雅虎,它仅为一些受欢迎的城市提供位置信息,而不是每个位置。到目前为止google's map API is better than any other API

只需在您的应用中隐藏该地图视图,并覆盖您想要查看的任何其他视图。