我在reverseGeocodeLocation
面临一些奇怪的问题。这就是我的工作。
我从一个view controller
推送到另一个didUpdateLocations delegate
。查看后,我呼叫当前位置。在reverseGeocodeLocation
收到当前位置时,我要求- (void)getReverseLocation
{
__block CLPlacemark* placemark;
CLGeocoder* geocoder = [CLGeocoder new];
[geocoder reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error)
{
if(error)
NSLog(@">>>>>>>> Error in reverseGeoLocation - %@", [error localizedDescription]);
if (error == nil && [placemarks count] > 0)
{
placemark = [placemarks lastObject];
completionBlock(placemark);
}
}];
}
获取地点标记值。
问题
以下是获取反向地理位置的代码
The operation couldn’t be completed. (kCLErrorDomain error 8.)
我不确定为什么它的表现如此。我在同一个地方,互联网连接很好。
这是因为线程吗?我也在主线程上尝试了这个。但同样的问题。
编辑:我收到此错误,经过一些尝试
reverseGeoCodeLocation错误 - CustomerService cService=new CustomerService();
答案 0 :(得分:1)
这就是为什么你有时会得到结果,有些则没有。直接来自Apple的地理编码文档
应用程序应该意识到它们如何使用地理编码。地理编码请求对每个应用程序都是速率限制的,因此在短时间内发出过多请求可能会导致某些请求失败。 (当超过最大速率时,地理编码器会将值为kCLErrorNetwork的错误对象返回到关联的完成处理程序。)