在开发中,单纯使用AVPlayer类是无法显示视频的,要将视频层添加至AVPlayerLayer中,这样才能将视频显示出来,所以先在ViewController的@interface中添加以下属性:
@property(nonatomic ,strong) AVPlayer *player;
@property(nonatomic ,strong) AVPlayerItem *playerItem;<br>@property (nonatomic,weak) IBOutletPlayerView *playerView;
其中playerView继承自UIView,不过重写了set和get方法,用于将player添加至playerView的AVPlayerLayer中,这样才能顺利将视频显示出来,使用步骤如下:
(1) 在线视频链接存放在videoUrl中,然后初始化playerItem,playerItem是管理资源的对象。
(2) 监听playerItem的status和loadedTimeRange属性。
(3) 当status等于AVPlayerStatusReadyToPlay是代表视频已经可以播放了,调用play方法播放。
(4) loadedTimeRange属性代表已经缓冲的进度,监听此属性可以在UI中更新缓冲进度。
(5) 添加一个通知,用于监听视频是否已经播放完毕。