MPMoviePlayerController错误_itemFailedToPlayToEnd同时播放YouTube视频iOS 7

我已经看到这里提到了网络上的几个地方,但还没有找到答案.

我正在使用ALMovieplayercontroller库.一切都很好,但是当我试图播放Youtube视频时,它会给我错误.

_itemFailedToPlayToEnd:{
kind = 1;
new = 2;
老= 0;
}

编辑

- (void)setContentURL:(NSURL *)contentURL {

    self.movieSourceType = MPMovieSourceTypestreaming;
    [super setContentURL:contentURL];
    [[NSNotificationCenter defaultCenter] postNotificationName:ALMoviePlayerContentURLDidChangeNotification object:nil];
    [self play];
}

这是我的代码

ALMoviePlayerControls *movieControls = [[ALMoviePlayerControls alloc] initWithMoviePlayer:self.moviePlayer style:ALMoviePlayerControlsstyleDefault];
//[movieControls setAdjustsFullscreenImage:NO];
[movieControls setBarColor:[UIColor colorWithRed:195/255.0 green:29/255.0 blue:29/255.0 alpha:0.5]];
[movieControls setTimeRemainingDecrements:YES];

//assign controls
[self.moviePlayer setControls:movieControls];
[self.view addSubview:self.moviePlayer.view];
self.moviePlayer.movieSourceType = MPMovieSourceTypestreaming;

//THEN set contentURL
[self.moviePlayer setContentURL:[NSURL URLWithString:@"http://www.youtube.com/watch?v=NaosmAGx8NM"]];

我无法找到解决方案.

请帮忙.

解决方法

是的,经过这么多的研究,我发现以下解决.

MPMoviePlayerController直接不会播放YouTube视频.您必须提取视频网址并将视频网址设置为MPMoviePlayerController.此视频将播放.

有很多可用的API可以提供提取的视频URL.

其中一些在下面

XCDYouTubeKit

HCYoutubeParser

但是使用这个API你的应用可能会被拒绝.你应该使用你的风险.

播放YouTube视频的最佳方式是WebView.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...