2

我想通过 获取位置,CLLocationCoordinate2D我使用了以下代码

//newLocation is a CLLocationCoordinate2D object
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder reverseGeocodeLocation:newLocation completionHandler:
^(NSArray *placemarks, NSError *error){
CLPlacemark *placemark = [placemarks objectAtIndex:0];
self.locationInput.text =placemark.subLocality;
self.locationInput.text =placemark.ISOcountryCode;
}];

但返回的地标为 nil 且错误描述为 kCLErrorDomain error =8

4

2 回答 2

1

返回值记录在这里。

https://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CoreLocationConstantsRef/Reference/reference.html#//apple_ref/doc/uid/TP40010237-CH2-SW2

8 号是“kCLErrorGeocodeFoundNoResult”,所以我怀疑您正在寻找没有结果的东西。我在其他地方读到 CLGeocoder 只能在设备(而不是模拟器)上运行,但我自己没有验证过。如果您确定您的搜索字符串应该得到结果,请在设备上尝试您的代码。

于 2012-11-19T21:04:02.513 回答
0

我的问题是我正在使用连接到泰国服务器的 VPN,试图在英国邮政编码上执行 reverseGeocodeLocation。当我将 VPN 切换到英国服务器时,它运行良好。

于 2019-06-04T02:41:55.677 回答