所以,我已经关注了其他相关线程,但由于某种原因,我仍然遇到这个错误,我准备把头发扯掉。我已经实现了 locationManager:didFailWithError 来检查用户是否选择“不允许”来使用当前位置。
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error {
NSLog(@"IN ERROR");
if ([error code] == kCLErrorDenied){
[manager stopUpdatingLocation];
}
}
但是,当用户选择'不允许'时总是出现以下错误......这很奇怪,尤其是文本'IN ERROR'出现的顺序。
ERROR,Time,293420691.000,Function,"void CLClientHandleDaemonDataRegistration(__CLClient*, const CLDaemonCommToClientRegistration*, const __CFDictionary*)",服务器不接受客户端注册 1 2010-04-19 21:44:51.000 testApp[1414:207] IN ERROR
因此,它甚至在有机会进入 didFailWithError 函数之前就输出了这个错误。有人对可能发生的事情有任何想法吗?locationManager 的其余代码如下:
self.locationManager = [[[CLLocationManager alloc] init] autorelease];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyKilometer;
locationManager.distanceFilter = 2;
[locationManager startUpdatingLocation];