12

1周,如果我的GPS應用程序無法檢索信號(例如:在我家裏測試)我沒有收到任何ALER。 我安裝我的錯誤通知以這種方式的LocationManager didFailWithError

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error {  NSString *errorType = (error.code == kCLErrorDenied) ? 
@"Access Denied" : @"Errore sconosciuto"; 
UIAlertView *alert = [[UIAlertView alloc] 
         initWithTitle:@"Errore recuperando la Location" 
         message:errorType 
         delegate:nil 
         cancelButtonTitle:@"Okay" 
         otherButtonTitles:nil]; 
[alert show]; 
[alert release]; 
} 

原因是什麼應用程序不檢索數據並沒有顯示我的警報彈出?

回答

37

,因爲你只檢查一個條件開關罩 需要實現像

- (void)locationManager: (CLLocationManager *)manager 
      didFailWithError: (NSError *)error 
    { 
     [manager stopUpdatingLocation]; 
     NSLog(@"error%@",error); 
     switch([error code]) 
     { 
      case kCLErrorNetwork: // general, network-related error 
      { 
       UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"please check your network connection or that you are not in airplane mode" delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
       [alert show]; 
       [alert release]; 
      } 
        break; 
      case kCLErrorDenied:{ 
       UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"user has denied to use current Location " delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
       [alert show]; 
       [alert release]; 
      } 
        break; 
      default: 
      { 
       UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"unknown network error" delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
       [alert show]; 
       [alert release]; 
      } 
        break; 
      } 
     } 

    } 

還有2多的情況下kCLErrorHeadingFailurekCLErrorLocationUnknown但一般不會需要它...

+0

mhmmmm好的,我已經理解了你的代碼,但是仍然沒有收到彈出消息:我會查看我的屏幕經度和經度緩存值,但沒有看到提示。 一件事,我已經添加了mkreversegeocoder istance,現在它將無法檢索我的城市(因爲我現在沒有在我的手機上的連接)。可以使用這個信息嗎? – zebra 2010-04-16 13:34:52

+1

我在我的套房中的ps只檢索此日誌: 2010-04-16 15:44:56.509高[797:207]錯誤域= NSURLErrorDomain代碼= -1009 UserInfo = 0x178410「沒有Internet連接」 – zebra 2010-04-16 13:46:22

+0

您的控制檯提示您遇到的問題與您的Internet 你可以嘗試在不同的設備或模擬器或不同的WiFi網絡......看看這些作品......這意味着你的應用程序是好的.... – 2010-04-16 14:00:38