当前位置: 首页 > news >正文

苹果IOS系统webglcontextlost问题-解决方案

问题描述

在IOS手机 解码视频流的时候,第一次可以正常播放,但只要IOS手机熄屏,再重新唤醒,就会一直播放失败,无论换哪个浏览器都不行。安卓手机则一切正常。

经过排查,发现 IOS手机 的浏览器会无故 webGL 的上下文对象,然后引发一些奇怪的问题。

webglcontextlost 可能会导致 以下几个现象,可以参考一下。

解决方案 在文章最后贴出来。

  • 导致的现象1

TypeError: Argument 1 ('shader') to WebGLRenderingContext.shader Source must be an instance of WebGLShader....(如下图)

  • 导致的现象2

导致 gl.createShader(x) 返回结果变为 null

  • 导致的现象3 

 RuntimeError: Out of bounds memory access (evaluating 'ee. Decode(n,o)')....


排查

以上几种现象,都可能是 webglcontextlost 引起的(我是说可能),如何判断呢?其实只要监听一下这个事件即可,代码如下:

const canvas = document.getElementById('canvas');canvas.addEventListener("webglcontextlost", () => {console.log("webglcontextlost")
}, false);

如果控制台输出字符串 webglcontextlost,那么恭喜中招,建议先解决这个问题。

可以看到,在苹果官网,很多人提到了同样的问题,看来是官方的锅(咱们不背)。


解决方案

既然是官方的锅,解决方案 自然是升级 IOS 系统版本(升级到17.1),搞定。

升级完测了一下,果然可以正常播放了。再次 熄屏 -> 唤醒 也可以正常播放。

另外,还有网友说把 IOS系统 降级到更低的版本 也可以解决,不过我懒得去折腾了,有兴趣的朋友可以自己试试看。 

http://www.lryc.cn/news/216463.html

相关文章:

  • 供应链ERP之合同:创建、修订与模板
  • MySQL第二讲·表的创建与修改
  • springboot的循环依赖问题描述及解决方案
  • 当科技遇上神器:用Streamlit定制AI可视化问答界面
  • 毛泽东思想和中国特色社会主义理论概论平时作业四
  • 微信怎么设置自动通过好友申请?
  • 亲测解决Pytorch TypeError: object of type ‘numpy.int64‘ has no len()
  • 前端模拟实现可编辑的表格table插件
  • PerfectPixel 插件,前端页面显示优化工具
  • mysql迁移data目录(Linux-Centos)
  • linux-等保测评
  • 一、React基础知识
  • RocketMQ入门示例-生产者
  • 2023面试知识点三
  • 【hcie-cloud】【1】华为云Stack解决方案介绍、华为文档获取方式 【上】
  • JS-类型转换
  • centos7计划任务crontab
  • pycharm 断点调试python Flask
  • Jtti:redis出现太多连接错误怎么解决
  • iOS实现弹簧放大动画
  • ③ 软件工程CMM、CMMI模型【软考中级-软件设计师 考点】
  • JumpServer开源堡垒机与万里安全数据库完成兼容性认证
  • 蓝桥杯每日一题2023.10.31
  • 【兔子王赠书第5期】ChatGPT速学通:文案写作+PPT制作+数据分析+知识学习与变现
  • selenium爬虫——以爬取澎湃新闻某搜索结果为例
  • 基于GEE云平台一种快速修复Landsat影像条带色差的方法
  • 云栖大会 | 科技改变生活,移远通信实力引领智能未来
  • FMC子卡解决方案:FMC214-基于FMC兼容1.8V IO的Full Camera Link 输出子卡
  • stm32 模拟spi
  • 小程序https证书