1

我正在尝试制作一个播放器,它从 tableview 获取一个 url(尚未完成)。我开始尝试使用 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];

没有更多的警告或崩溃。但是播放器只是黑屏,有什么想法吗?

4

1 回答 1

1

它为空白的原因是该文件需要是受支持的格式。合适格式的列表可以在这里的 Apple 文档中找到合适的格式,即 MPEG、H.264 等。

目前,您要求 MPMoviePlayer 播放 url,尽管这是指向带有电影的 youtube 页面的 url。url 需要是实际的电影文件。

您可以播放此 youtube 视频的方法是将视图打开为 web 视图,定向到此 youtube 页面,或阅读Google 文档以使用他们的 api 在应用程序中播放。

我希望这有帮助,

干杯,吉姆。

于 2014-03-04T23:54:03.743 回答