我正在使用地图套件,并且我有使用UILongPressGestureRecognizer类更改地图套件中位置的任务,我总是可以成功获取纬度和经度,但是一段时间无法获取位置。我就是这样

UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc]
                                      initWithTarget:self action:@selector(handleGesture:)];
lpgr.minimumPressDuration = 2.0;  //user must press for 2 seconds
[mapView addGestureRecognizer:lpgr];
[lpgr release];



 - (void)handleGesture:(UIGestureRecognizer *)gestureRecognizer
{

MKPointAnnotation *pa = [[MKPointAnnotation alloc] init];
pa.coordinate = touchMapCoordinate;
temp.latitude= pa.coordinate.latitude;
temp.longitude= pa.coordinate.longitude;
 MKReverseGeocoder *reverseGeocoder = [[MKReverseGeocoder alloc] initWithCoordinate:pa.coordinate];
reverseGeocoder.delegate = self;
[reverseGeocoder start];


}
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark
{
temp.location = ABCreateStringWithAddressDictionary(placemark.addressDictionary, NO);
NSLog(@"original location is %@",temp.location);

}


但是有一段时间我遇到这样的错误


  /SourceCache/ProtocolBuffer/ProtocolBuffer-92/Runtime/PBRequester.m:687
  服务器返回错误:503 2012-01-02 16:19:36.284 openInvite [303:707]
  reverseGeocoder:didFailWithError:Error
  Domain = NSURLErrorDomain代码= -1011“无法执行该操作
  完成。 (NSURLErrorDomain错误-1011。)“ UserInfo = 0x124ea0
  {PBHTTPStatusCode = 503}


请帮我。

最佳答案

HTTP状态代码是线索。


  503服务不可用
  
  由于以下原因,服务器当前无法处理请求
  服务器的暂时过载或维护。含义是
  这是暂时的情况,经过一段时间后会缓解
  延迟。如果知道的话,延迟的长度可以在
  重试后标头。如果没有给出Retry-After,则客户端应该
  处理响应,就像处理500次响应一样。

  Note: The existence of the 503 status code does not imply that a
  server must use it when becoming overloaded. Some servers may wish
  to simply refuse the connection.



因此,请检查HTTP状态代码,以及其503是否再次发送请求。这应该解决问题

关于iphone - 在iPhone开发人员的反向地理编码器中获取奇怪的输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8700310/

10-13 04:56