我需要获取有关使用MPMoviePlayer播放视频的总时间的信息。如何处理用户观看3分钟视频最多2分钟并向后移动到1.30并关闭视频的情况。要求是知道分数用户准确查看的视频。
答案 0 :(得分:1)
来自MPMoviePlayerController
上的Apple文档:
电影播放器通知
电影播放器会生成通知,让您的应用通知电影播放的状态。除了在播放完成时收到通知,您还可以在以下情况下通知您的应用:
- 当电影播放器开始播放,暂停或开始向前或向后搜索时
使用这些通知,您可以设置自己的计时器,以了解视频播放的总时间。具体来说,您可能需要MPMoviePlayerPlaybackStateDidChangeNotification
。
知道观看视频的总百分比可能有点棘手,但我认为仍然可能。您需要注册MPMediaPlayback
协议,并将其与上述PlaybackStateDidChangeNotification
一起使用。
我有一个想法(虽然可能不是最好或最有效的方法)是为视频的每一秒创建一个BOOL
值数组,1。播放视频时,抓住播放器上的currentPlaybackTime
并在播放时标记每秒。如果视频状态发生变化(暂停,向前跳过等),请停止将其标记为关闭,然后根据新的currentPlaybackTime
启动该新索引并继续标记。完成后,计算已标记的索引的百分比。
MPMoviePlayerController
MPMediaPlayback Protocol
请告诉我这是否适合你!!