当我尝试在UIWebView
中启动视频播放(通过YouTube)时,视频会打开,然后调试器会说:
[MPAVController] Autoplay: Enabling autoplay
[MPAVController] Autoplay: Skipping autoplay, disabled (for current item: 0, on player: 1)
这是一个类似的问题:MPMoviePlayerController stops playing after a few seconds
我唯一的问题是UIWebView
,我无法设置MPMoviePlayerController
到prepareToPlay
。至少不是我的知识。如果有人可以帮助解决这个问题,那就太棒了!
答案 0 :(得分:11)
我在ios6中遇到了同样的问题。当你玩视频播放时,在iOS6下面是原因。 viewWillDisappear方法没有调用。但是在iOS6中这种方法每当YouTube视频播放时都会调用。这可能是一个bug,我现在还不知道。
我修复了下面的相同内容。
设置全屏输入和退出通知的通知,以便您可以设置一些标志值以避免执行SOme代码。
// For FullSCreen Entry
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(youTubeVideofullScreen:) name:@"UIMoviePlayerControllerDidEnterFullscreenNotification" object:nil];
// For FullSCreen Exit
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(youTubeVideoExit:) name:@"UIMoviePlayerControllerDidExitFullscreenNotification" object:nil];
- (void)youTubeVideofullScreen:(id)sender
{ //Set Flag True.
isFullscreen = TRUE;
}
- (void)youTubeVideoExit:(id)sender
{
//Set Flag False.
isFullscreen = FALSE;
}
-(void)viewWillDisappear:(BOOL)animated{
//Just Check If Flag is TRUE Then Avoid The Execution of Code which Intrupting the Video Playing.
if(!isFullscreen)
//here avoid the thing which you want. genrally you were stopping the Video when you will leave the This Video view.
[super viewWillDisappear:animated];
}
我肯定会对你有所帮助。
答案 1 :(得分:3)
我在其中一个应用中遇到了同样的问题。事实证明我们将UIWebView
的HTML设置为-(void)viewWillDisappear
中的空字符串。显然,当显示来自UIWebView
的全屏视频时,此方法现在在iOS 6中被调用,因此这可能是您的问题所在。