0

在我的应用程序中,第一次 reverseGeocoder 结果如下错误块:

didFailWithError:Error Domain=NSURLErrorDomain Code=-1011 “操作无法完成。(NSURLErrorDomain 错误 -1011。)” UserInfo=0x6252100 {PBHTTPStatusCode=503}

这是我使用的代码:

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation { 

     geocoder = [[MKReverseGeocoder alloc] initWithCoordinate:newLocation.coordinate];
     [geocoder setDelegate:self];
     [geocoder start];
    [locationManager stopUpdatingLocation];
}   
-(void)reverseGeocoder:(MKReverseGeocoder *)geocoder1 didFailWithError:(NSError *)error
{
    UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"iBeen There" message:@"GPS can't track the location please check the internet connection." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alert show];
    [alert release];
    NSLog(@"reverseGeocoder:%@ didFailWithError:%@", geocoder, error);
}

第一次它会出错块(有时)。我错过了什么请帮帮我吗?

4

1 回答 1

0

错误 -1011 是错误的服务器响应(来自此处的苹果文档)并且 HTTP 状态代码是 503(服务不可用)。

所以,我想除非你给他们无效的数据,否则他们的结局是个问题!

但是,您可能会考虑检查一些边缘情况:

(1)坐标的值是多少?如果它无效,那么地理编码器可能会返回某种错误(尽管它可能不应该返回 503 ;)

(2) 您是否支持代理/网络身份验证 - 如果您支持,那么您实际上并没有与地理编码服务交谈,您正在与可能无法理解您正在尝试做什么的代理交谈!

于 2011-09-16T11:19:57.423 回答