SJBaseVideoPlayer icon indicating copy to clipboard operation
SJBaseVideoPlayer copied to clipboard

正常播放后断开网络,点击重新加载导致闪退

Open hootigger opened this issue 3 years ago • 0 comments

#18 所描述的情况是弱网导致fail继续播放会导致崩溃,现在测试发现当播放视频正常播放后,断开网络(保证缓冲进度未100%),然后播放到未缓冲的资源时,切换到了 错误控制层,此时点击 重试 会触发崩溃.

// 重新创建playerItem规避`An AVPlayerItem cannot be associated with more than one instance of AVPlayer`错误.
        if (avPlayerItem != nil && avPlayerItem.status == AVPlayerStatusFailed)
...

之前修复的代码加了fail状态判断,现在发现上述情况是AVPlayerStatusReadyToPlay的状态,所以未重新创建AVPlayerItem导致重复bind. 现在状态判断处理为 if (avPlayerItem != nil && avPlayerItem.status != AVPlayerStatusUnknown)

hootigger avatar May 10 '21 05:05 hootigger