我正在尝试制作一个玩家,从桌面视图获取网址(尚未完成)。 我开始尝试使用MPMediaPlayerController让播放器工作。
NSString *video = [NSString stringWithFormat:@"http://www.youtube.com/watch?v=GurkREc-q4I"];
NSURL *url = [NSURL URLWithString:video];
MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc]initWithContentURL:url];
[moviePlayerController.view setFrame:[self.view frame]];
[self.view addSubview:moviePlayerController];
[moviePlayerController setShouldAutoplay:YES];
[moviePlayerController prepareToPlay];
moviePlayerController.fullscreen = YES;
[moviePlayerController play];
当我尝试将moviePLayer添加为子视图时,我收到此警告:不兼容的指针类型将'MPMoviePlayerController *'发送到'UIView *'类型的参数。
此外,当我打开视图时,应用程序关闭,在控制台中我们有:
2014-03-04 18:26:50.696 FavVideos [6181:70b] - [MPMoviePlayerController superview]:无法识别的选择器发送到实例0xa63c470 2014-03-04 18:26:50.735 FavVideos [6181:70b] * 终止应用程序 未捕获的异常'NSInvalidArgumentException',原因: ' - [MPMoviePlayerController superview]:发送到无法识别的选择器 实例0xa63c470'
关于我做错了什么的想法?
谢谢你。
编辑:
好的,我看到了我在做什么来得到错误和“崩溃”。
下面:
[self.view addSubview:moviePlayerController];
我改为:
[self.view addSubview:moviePlayerController.view];
不再有警告或崩溃。 但玩家只是一个黑屏,任何想法?
答案 0 :(得分:1)
它为空的原因是该文件需要是受支持的格式。合适的格式列表可以在Apple文档Suitable Formats中找到,即MPEG,H.264等。
目前你要求MPMoviePlayer播放一个网址,不过这是指向带有电影的youtube网页的网址。网址必须是实际的电影文件。
您可以播放此视频的方式YouTube视频可以将视图打开为webview,定向到此YouTube页面,或者阅读Google documentation以使用他们的API在应用内播放。
我希望这有帮助,
干杯,吉姆。