我需要使用MPMoviePlayerController在我的ios应用中流式传输电影。
这部电影很好用:
moviePlayer = new MPMoviePlayerController(new NSUrl("http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"));
View.AddSubview(moviePlayer.View);
moviePlayer.SetFullscreen(true, true);
moviePlayer.Play();
但这个不起作用:
moviePlayer = new MPMoviePlayerController(new NSUrl("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"));
View.AddSubview(moviePlayer.View);
moviePlayer.SetFullscreen(true, true);
moviePlayer.Play();
官方MPMoviePlayerController documentation,说支持mp4,所以我不知道它为什么不起作用。
设备会显示播放器,但它不会启动任何内容。
提前致谢
答案 0 :(得分:2)
检查您的应用输出,我会假设您收到以下消息:
App Transport Security已阻止明文HTTP(http://)资源加载,因为它不安全。可以通过应用程序的Info.plist文件配置临时例外。
因此,在您可以获得基于SSL的mp4流进行生产之前,您可以通过添加以下内容进行测试:
<key>NSAppTransportSecurity</key>
<dict>
<!--Include to allow all connections (DANGER)-->
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
注意:有趣的是,基于http的.m3u8
播放列表不会触发&#34; App Transport Security&#34;错误,但它们的底层传输流片段(.ts
)将......