ios - MPMoviePlayerViewController 以不寻常的外观锁定应用程序?

标签 ios iphone video youtube

因此,我尝试了多种方法,结果相同。

我使用 YouTube MP4 URL 进行了测试,例如:
This

我这样做的方式看起来很像:

self.moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:videoUrlString]];

然后我播放视频。如果我播放视频并全屏播放,则整个应用程序都会锁定。视频播放器出现,但部分状态栏(如时间和栏)消失,只留下运营商名称。音量 slider 只有一半,它会无限加载,并忽略任何进一步的触摸输入,直到我终止应用程序。如果我旋转 iPhone,音量 slider 和状态栏的其余部分会重新出现,但它仍然不会响应触摸或完成加载。 Screenshot of issue.

相反,如果我将 MPMoviePlayerViewController 对象传递给带有 presentViewController: 的 UINavigationController,则应用程序似乎挂起:直到我旋转,然后视频突然正确显示并开始播放!然而,同样,所有的触摸输入都被忽略了,应用程序基本上被锁定了。

这是我遇到的最奇怪的问题之一。

所以我尝试使用其他人构建的工具。我使用 Youtube ID 而不是直接链接尝试了 XCDYouTubeKit 和 YKMediaKit,结果完全相同。查看他们的代码后,他们都使用 MPMoviePlayerViewControllers。

这里发生了什么事?谁能帮我找出问题所在?

最佳答案

这很令人惊讶。你试过玩 AV Foundation 吗?这是一个比 MediaPlayer.framework 更现代的媒体 API .

如果您只能针对 iOS 8,那么 AVPlayerViewController是通过 AVPlayer 播放媒体的简单方法.

关于ios - MPMoviePlayerViewController 以不寻常的外观锁定应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29930052/

相关文章:

android - 对正在播放的视频应用效果

Java : add some text in a video?

iOS延迟我无法弄清楚使用AVFoundation扫描条形码

ios - iOS 免费配置文件的问题

css - iPhone 6 和浏览器的媒体查询

ios - 如何将文件更新到 QuickBlox iOS 中的内容模块

iOS View 可见性消失

ios - 如何快速将 UISlider 舍入为 int

iphone - 按名称调用 Objective-C 方法

java - Android 6.0 - 使用 PlaybackParams 设置视频速度