我没有收到任何通知MPMoviePlayerController.我究竟做错了什么?
我使用以下逻辑.
我开始播放youtube视频了UIWebView.UIWebView称之为标准MPMoviePlayerController.我不控制MPMoviePlayerController因为我没有实例化MPMoviePlayerController.
我使用自动播放运行youtube的剪辑(延迟1秒):
[self performSelector:@selector(touchInView:) withObject:b afterDelay:1];
Run Code Online (Sandbox Code Playgroud)
我的代码是:
- (void)viewDidLoad
{
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(loadStateDidChange:) name:MPMoviePlayerLoadStateDidChangeNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playbackDidFinish:) name:MPMoviePlayerDidExitFullscreenNotification object:nil];
[self embedYouTube];
}
- (void)loadStateDidChange:(NSNotification*)notification
{
NSLog(@"________loadStateDidChange");
}
- (void)playbackDidFinish:(NSNotification*)notification
{
NSLog(@"________DidExitFullscreenNotification");
}
- (void)embedYouTube
{
CGRect frame = CGRectMake(25, 89, 161, 121);
NSString *urlString = [NSString stringWithString:@"http://www.youtube.com/watch?v=sh29Pm1Rrc0"];
NSString *embedHTML = @"<html><head>\
<body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>"; …Run Code Online (Sandbox Code Playgroud) youtube mpmovieplayercontroller mpmovieplayer nsnotificationcenter ios
我正在使用UIWebViewiFrame播放YouTube视频.
我UIMoviePlayerControllerDidEnterFullscreenNotification用来检测youtube屏幕到全屏.
如下代码:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(myMovieEnterFullScreen:)
name: @"UIMoviePlayerControllerDidEnterFullscreenNotification"
object: nil];
Run Code Online (Sandbox Code Playgroud)
它适用于iOS7.
但我尝试在iOS8中运行它.
它不起作用.
我认为通知名称已被更改.
有没有办法在ios8中检测youtube全屏事件?
美好的一天,
通过使用UIWebview,我现在有了一种在我的应用程序中显示youtube视频的工作方法(使用标签,在webview中查找播放按钮并在其上触发触摸事件).
奇迹般有效.视频弹出并播放.但是,我想在视频结束或用户点击完成按钮时收到一个事件.
在互联网上我发现有一个事件:MPAVControllerItemPlaybackDidEndNotification在那里你可以听.然而,这个不被称为.
经过一些进一步的研究后,我发现对于通过UIWebView嵌入的Youtube视频,还调用了另一个通知(UIMoviePlayerControllerDidExitFullscreenNotification).不幸的是,一个人不再工作了.(在这里找到)
在视频播放完毕或被解雇后,有谁知道我怎么能做一些动作?
谢谢