我应该使用哪种网络服务来获取纬度和经度的邮政编码? 我使用的是Geonames API,但它不符合要求。我想使用任何提供邮政编码/邮政编码的webservices。
Geocoder geocoder;
List<Address> addresses;
geocoder = new Geocoder(this, Locale.getDefault());
addresses = geocoder.getFromLocation(_mylat, _mylong, 1);
String address = addresses.get(0).getAddressLine(0);
String city = addresses.get(0).getAddressLine(1);
String country = addresses.get(0).getAddressLine(2);
String zipcode = addresses.get(0).getPostalCode();
即使我尝试了这段代码,但我没有得到结果。我得到Exception为IndexOutOfBoundException。
答案 0 :(得分:0)
从标签中,我假设您正在开发Android应用。如果是这种情况,我建议使用Geocoder.getFromLocation()
,而不是网络服务。
给定纬度和位置,它将生成可能的Address
个对象的列表。然后,您可以使用getPostalCode()
获取其邮政编码。
有关教程,请参阅Displaying a Location Address。
答案 1 :(得分:0)
Geocoder geocoder;
List<Address> addresses;
geocoder = new Geocoder(this, Locale.getDefault());
addresses = geocoder.getFromLocation(_mylat, _mylong, 1);
String address = addresses.get(0).getAddressLine(0);
String city = addresses.get(0).getAddressLine(1);
String country = addresses.get(0).getAddressLine(2);
String zipcode = addresses.get(0).getPostalCode();