我知道核心位置在 iPhone 上并不总是准确的。有没有办法使用位置(纬度/经度)以及准确性来获取该地区所有可能的郊区/街道?
因此,与其使用反向地理编码并让它猜测“可能的最佳郊区/街道”,有没有办法让它给出它可以考虑的所有可能的郊区/街道的数组(或其他格式)?
谢谢!!
我知道核心位置在 iPhone 上并不总是准确的。有没有办法使用位置(纬度/经度)以及准确性来获取该地区所有可能的郊区/街道?
因此,与其使用反向地理编码并让它猜测“可能的最佳郊区/街道”,有没有办法让它给出它可以考虑的所有可能的郊区/街道的数组(或其他格式)?
谢谢!!
因此,最好的方法是使用 Google maps API。例如,看看下面的 url:http ://maps.google.com/maps/geo?q=38.4417077,-90.7122047&output=xml
如您所见,对于这对(纬度,经度),您有 10 个可能的地标用于该坐标。
您可以在以下位置找到相关文档:http ://code.google.com/apis/maps/documentation/geocoding/index.html
您可以看到您以 XML、JSON、CSV 格式获取信息。
看一下状态码,重要的是验证请求是否成功(通常是 200 或 200 之类的)。
那么,如何使用它的VFN呢?
很简单。
double latitude = coordinate.latitude;
double longitude = coordinate.longitude;
NSString *urlString = [NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%f,%f&output=xml", latitude, longitude];
NSURL *url = [NSURL URLWithString:urlString];
NSString *locationString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
关于 locationString 是来自 Google Geocoder 的响应,现在您可以根据需要使用该信息。请记住首先检查状态代码,然后解析信息。如果您只想要谷歌地理编码器选择的第一个地标,我建议您使用 CSV 格式的输出,这很容易使用。
如果您有任何疑问,请告诉我!
干杯,
VFN