2010-06-23 1 views
1

До вчерашнего дня Мой MPMovieController был прекрасно в iPhone SDK 3. Но вчера, когда я модернизировал SDK ти iPhone SDK 4 мой MoviePlayer перестает работать, что дает мне предупреждение устаревания на следующей строке (они устарели много методов)MPMoviePlayercontroller не работает в iphone SDK 4? - Необходимая справка

moviePlayer.movieControlMode = MPMovieControlModeDefault; 

Мой полный код выглядит следующим образом:

NSURL *fileURL = [NSURL URLWithString:[NSString stringWithFormat:@"%@/videos/%@",[[NSUserDefaults standardUserDefaults] objectForKey:@"SERVICE_URL"] 
              ,customObject.movieURL]]; 

    MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL:fileURL]; 
    if (mp) 
    { 
     // save the movie player object 
     self.moviePlayer = mp; 

     moviePlayer.movieControlMode = MPMovieControlModeDefault; 
     [mp release]; 

     // Apply the user specified settings to the movie player object 


     [[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(myMovieFinishedCallback:) 
                name:MPMoviePlayerPlaybackDidFinishNotification 
                object:moviePlayer]; 


     // Play the movie! 
     [self.moviePlayer play]; 
    } 

Скажите, пожалуйста, какой метод заменить вместо устаревшего метода или сделать что-то другое?

Спасибо,

ответ

3

Я использовал MPMoviePlayerController только сегодня утром, и этот код работает хорошо (проверено только на IPad симулятор)

NSString *urlStr = [[NSBundle mainBundle] pathForResource:@"video.mp4" ofType:nil]; 
NSURL *url = [NSURL fileURLWithPath:urlStr]; 
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url]; 
[self.view addSubview:moviePlayer.view]; 
moviePlayer.view.frame = CGRectMake(50, 50, 200, 200); 
[moviePlayer play]; 
+0

Таким образом, мы должны manully добавить вид Теперь ADN позже также удалить? – harshalb

+0

@hib: По-видимому, да – Cesar

+0

Я не добавляю tmpView, так что он не работает. Это необходимо . потому что раньше он работал без каких-либо ухищрений. – harshalb