2012-05-03 5 views
0

Я тестирую этот код на своем iphone в режиме самолета, когда я нажимаю на кнопку, показывает сообщение, но в состоянии, когда я подключаюсь к Интернету, играть в кнопку не работает, и мой выход приложенияprobleme in Reachability

Это код:

-(void)playMovie { 
    NSURL *url = [NSURL URLWithString:@"http://www.tvlaayoune.com/iphone/jt.mp4"]; 
    UIAlertView *errorView; 
    if ([[Reachability sharedReachability] 
      internetConnectionStatus] == NotReachable) { 
     errorView = [[UIAlertView alloc] 
         initWithTitle: @"Unable To Connect To Server" 
           message: @"Check your network connection and try again." 
          delegate: self 
         cancelButtonTitle: @"OK" 
         otherButtonTitles: nil]; 
    } else { 
     moviePlayer = [[MPMoviePlayerController alloc] 
          initWithContentURL:url]; 
     [[NSNotificationCenter defaultCenter] 
      addObserver:self 
       selector:@selector(moviePlayBackDidFinish:) 
        name:MPMoviePlayerPlaybackDidFinishNotification 
    object:moviePlayer]; 
     moviePlayer.controlStyle = MPMovieControlStyleDefault; 
     moviePlayer.shouldAutoplay = YES; 
     [self.view addSubview:moviePlayer.view]; 
     [moviePlayer setFullscreen:YES animated:YES]; 
    } [errorView show]; 
} 

Что может быть проблема?

+0

Проблема в том, что вы не процитировать вопрос, который отображается в журнале после выхода из приложения. Также вы не указываете трассировку стека, которая должна быть видимой внутри отладчика. – Till

ответ

0

Если я правильно понял, ваш код падает, когда у вас есть Интернет и вы хотите отобразить фильм. В этом случае последняя строка кода будет пытаться отображать errorView, но она не выделяется, если у вас есть интернет.

Move, которые показывают вызов в том же случае, если:

-(void)playMovie { 
    NSURL *url = [NSURL URLWithString:@"http://www.tvlaayoune.com/iphone/jt.mp4"]; 
    UIAlertView *errorView; 
    if ([[Reachability sharedReachability] 
      internetConnectionStatus] == NotReachable) { 
     errorView = [[UIAlertView alloc] 
         initWithTitle: @"Unable To Connect To Server" 
           message: @"Check your network connection and try again." 
          delegate: self 
         cancelButtonTitle: @"OK" 
         otherButtonTitles: nil]; 



     // Notice this line here: 
     [errorView show]; 


    } else { 
     moviePlayer = [[MPMoviePlayerController alloc] 
          initWithContentURL:url]; 
     [[NSNotificationCenter defaultCenter] 
      addObserver:self 
       selector:@selector(moviePlayBackDidFinish:) 
        name:MPMoviePlayerPlaybackDidFinishNotification 
    object:moviePlayer]; 
     moviePlayer.controlStyle = MPMovieControlStyleDefault; 
     moviePlayer.shouldAutoplay = YES; 
     [self.view addSubview:moviePlayer.view]; 
     [moviePlayer setFullscreen:YES animated:YES]; 
    } 


    // Removed the show call from here 

}