AVPlayerViewController (iOS9)

在iOS开发中,播放视频通常有两种方式,一种是使MPMoviePlayerController(需要导入MediaPlayer.Framework),还有一种是使用AVPlayer。简而言之MPMoviePlayerController使用更简单,功能不如AVPlayer强大,而AVPlayer使用稍微麻烦点,不过功能更加强大。

在iOS9中,苹果推出了AVPlayerViewController,更加方便快捷的播放视频。

我们拖拽一个AVPlayerViewController到storyboard中。在viewController中创建一个按钮,来展示AVPlayerViewController。

命名segue的identifier:AVPlayerViewSegue

在viewController中引入框架:

import AVFoundation
import AVKit
//跳转之前所做的操作
override func prepare(for segue: UIStoryboardSegue, sender: Any?)  {
        
    if "AVPlayerViewSegue" == segue.identifier {
        let destination = segue.destination as! AVPlayerViewController
        let url = URL(string:
                "http://200006680.vod.myqcloud.com/200006680_809fb69ce10f11e59cc863ed97c9457c.f20.mp4")
        destination.player = AVPlayer(�url: url!)
    }
}```

这样就可以轻松播放网络视频了。

注意如果你的连接是http的话,默认是不支持的。需要在info.plist中加入代码(支持所有http连接,如果有需要可以只支持制定域名):

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>


由于 AVPlayerViewController 不能被继承,如果你想要实现只支持横屏播放的话,可以考虑用 extension :

extension AVPlayerViewController {
override open var supportedInterfaceOrientations: UIInterfaceOrientationMask {
return .landscapeLeft
}
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容