MPMoviePlayer 卡在“正在加载...”

Posted

技术标签:

【中文标题】MPMoviePlayer 卡在“正在加载...”【英文标题】:MPMoviePlayer stuck on "loading..." 【发布时间】:2014-11-08 19:10:09 【问题描述】:

我正在使用 URL 初始化一个新的 MPMoviePlayerViewController 以从服务器播放全屏视频。播放器屏幕出现后,卡在“Loading...”,但实际上并没有加载,因为某些原因根本没有网络通信。我使用此代码:

- (IBAction)playerButtonPressed:(id)sender 
    NSURL *url = [NSURL URLWithString:
                  @"http://ebookfrenzy.com/ios_book/movie/movie.mov"];

    MPMoviePlayerViewController *c = [[MPMoviePlayerViewController alloc]
                                      initWithContentURL:url];

    [self presentMoviePlayerViewControllerAnimated:c];

网址是正确的,这是我得到的:

【问题讨论】:

【参考方案1】:

您的代码在我的机器上运行良好。问题无法重现。

在您的情况下,也许有什么东西阻止了模拟器建立网络连接。可能是 LittleSnitch;网络可能已关闭;有很多可能性。

您正在通过计算机网络有效地连接模拟器的网络。我建议您在设备而不是模拟器上运行代码,以避免这种复杂性。

【讨论】:

谢谢!已调试此代码约 30 分钟,未发现任何错误!将调试网络堆栈... 顺便说一句,如果你只能在 iOS 8 上运行,你应该从 MPMoviePlayerViewController 迁移出来,改用 AVKit。 是的,我首先想到了这个想法,但是该应用程序必须在iOS 7+上支持 我当然明白。我只是确保你知道 AVKit 的存在。 :) 太棒了!感谢您的反馈。我猜模拟器有时会“陷入困境”......不过,总的来说,我发现某些类最好在设备上进行测试,MPMoviePlayer 就是其中之一。

以上是关于MPMoviePlayer 卡在“正在加载...”的主要内容,如果未能解决你的问题,请参考以下文章

如何替换 MPMoviePlayer 通知?

MPMoviePlayer 无法使用 Swift 播放

MPMoviePlayer 完成按钮问题

使用 MPMoviePlayer 播放视频

关于 MPMoviePlayer 控件样式

MPMoviePlayer 或 AVPlayer 帧前进