3

我想保存我播放的视频的最后一个位置AVPlayer。所以当我关闭应用程序并且我想稍后再看视频时,它不应该从头开始。该应用程序是否有可能记住该位置?

非常感谢!

更新

我正在为 iOS 6.1.3 开发

4

1 回答 1

3

你可以使用AVPlayer's currentTime属性。它返回当前的播放时间AVPlayerItem

要在下一个会话中恢复播放时间,您可以将存储的时间传递给AVPlayer's seekToTime:

[self.player seekToTime:storedPlaybackTime];

AVPlayer currentTime 文档
AVPlayer seekToTime 文档

更新
要持久化CMTimecurrentTime 返回的值,您可以使用NSValue 提供的 AVFoundation 便捷方法

要包装CMTime一个NSValue,使用valueWithCMTime:

[NSValue valueWithCMTime:player.currentTime];

要从持久值中获取 CMTime 结构,请使用:

CMTime persistedTime = [storeValue CMTimeValue];

CMTime将结构包装在NSValue实例中后,可以使用键控归档器 &NSData将时间写入磁盘。

NSHipster 有一篇关于该主题的好文章:http: //nshipster.com/nscoding/

于 2013-05-27T07:45:09.043 回答