2012-10-01 70 views
0

我非常高興地看到,當升級到Xcode 4.5時,現在我的應用程序中沒有任何視頻可以播放。已安裝Xcode 4.5,MPMoviePlayerController不再工作

一般來說,我做這樣的事情:

self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:[self getBundleClip:@"theVideo"]]; 
self.moviePlayer.controlStyle = MPMovieControlStyleNone; 
self.moviePlayer.shouldAutoplay = YES; 
self.moviePlayer.repeatMode = MPMovieRepeatModeOne; 
self.moviePlayer.view.frame = self.container.frame; 
self.moviePlayer.view.userInteractionEnabled = NO; 
[self.container addSubview:self.moviePlayer.view]; 

- (NSURL*)getBundleClip:(NSString*)clip 
{ 
    NSBundle *bundle = [NSBundle mainBundle]; 
    NSString *moviePath = [bundle pathForResource:clip ofType:@"mp4"]; 
    return [NSURL fileURLWithPath:moviePath]; 
} 

再次,一切都完美地發揮我Xcode更新到4.5了。任何人都有這個問題?

我也得到這樣的輸出:

[MPAVController] Autoplay: Disabling autoplay for pause 
[MPAVController] Autoplay: Disabling autoplay 

回答

0

我不知道爲什麼它沒有具體打,但是看起來效果,這取決於你建立針對iOS系統SDK的版本是不同的。看看MPMoviePlayerController documentation

特別是,您可能想嘗試在電影播放器​​上調用prepareToPlay方法。

+0

This Works。如果shouldAutoPlay設置爲YES,放置prepareToPlay的最佳位置在哪裏?換句話說,如果你沒有明確地調用「play」,你怎麼能知道你在prepareToPlay實際開始播放前呢? – soleil

+0

@soleil我不確定。該文檔沒有指定有關'shouldAutoPlay'行爲的詳細信息。嘗試嘗試交換調用兩種方法的順序,看看它是否有所作爲。 – ThomasW

4

我想你在函數中定義它?

如果使用ARC,必須保留的MPMoviePlayerController

將它添加到接口文件!

@property(nonatomic, strong) MPMoviePlayerController *moviePlayer;