检测Avplayer何时达到总持续时间的某些百分比



当用户播放视频时,我试图弄清楚用户何时播放了一定百分比。

例如,用户播放视频,我想在用户播放50%时显示一些视图。

更澄清,有没有办法设置"听众/观察者",因为发生50%?

观察的最佳方法可能是从文档中使用periodTimeObserver

func addPeriodicTimeObserver() {
    // Invoke callback every half second
    let interval = CMTime(seconds: 0.5,
                          preferredTimescale: CMTimeScale(NSEC_PER_SEC))
    // Queue on which to invoke the callback
    let mainQueue = DispatchQueue.main
    // Add time observer
    timeObserverToken =
        player.addPeriodicTimeObserver(forInterval: interval, queue: mainQueue) {
            [weak self] time in
            // Check whether the time has reached half of duration
    }
}

最新更新