AVPlayerViewController (iOS9)

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

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

AVPlayerViewController (iOS9)_第1张图片

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

AVPlayerViewController (iOS9)_第2张图片

命名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连接,如果有需要可以只支持制定域名):

NSAppTransportSecurity

NSAllowsArbitraryLoads


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

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

你可能感兴趣的:(AVPlayerViewController (iOS9))