iOS15 Webview使用Video标签出现valueForUndefinedKey崩溃问题求助
iOS15 WebView加载含Video标签页面崩溃原因
错误翻译
[<WebAVPlayerController 0x282f41420> valueForUndefinedKey:]: this class is not key value coding-compliant for the key playingOnMatchPointDevice.
上述错误的中文含义为:WebAVPlayerController 类不支持通过键值编码(KVC)访问 playingOnMatchPointDevice 键。
问题产生原因
- 该问题是iOS15.0~iOS15.2版本的WebKit内核原生bug,苹果在后续iOS15.3及更高版本的系统更新中已经修复了该问题。
- 触发根因:WebKit内部处理视频播放状态同步逻辑时,错误尝试用KVC访问iOS端
WebAVPlayerController类不存在的playingOnMatchPointDevice属性,该属性是为Apple TV等投屏匹配点设备预留的实现,iOS端的WebAVPlayerController未定义该属性,KVC访问不存在的键时直接抛出异常导致崩溃。 - 高频触发场景:页面video标签设置了自动播放属性、页面加载完成后立即通过JS操作视频播放/暂停、WebView提前开启了媒体自动播放权限时,触发该bug的概率会大幅提升。
内容的提问来源于stack exchange,提问作者Leo
相关产品推荐
相关产品推荐

