Cocos Creator 2.4.X 初始化webgl出错

碰到一个问题,cocos creator 2.4.14打包的H5项目运行在微信浏览器,部分手机一定概率会报Uncaught TypeError: Cannot read properties of null (reading ‘getParameter’) 这个错误,且不是必然的是偶发的,有时候好的正常的,有时候会报错造成页面就卡死在首页了
定位到引擎的代码是Creator\2.4.14\resources\engine\cocos2d\renderer\gfx文件夹的device.js文件的_initCaps函数中,gl是null造成,也就是webgl初始化失败了

  • Creator 版本: 2.4.14

  • 目标平台: 微信浏览器

  • 重现方式:一定概率

  • 首个报错: Uncaught TypeError: Cannot read properties of null (reading ‘getParameter’) @ (/cocos2d-js-min.f9151.js:1:953552) Error.message: Cannot read properties of null (reading ‘getParameter’) \n Error.stack: TypeError: Cannot read properties of null (reading ‘getParameter’)\n at t._initCaps

项目内容是不是很多 如果很多 内存是不是16g 如果是的话 32g解决

平面的小项目,内容最多算50M,有考虑是内存不足造成的初始化失败
所以尝试过在main.js里面增加初始化失败的话等待1秒后重试,可是完全无法解决这个问题
也就是如果当前状况获取gl是null的话重试在多次也是null
资源不足的话给予更多的时间应该也是有可能会成功的吧

研究了一圈还是没有解决问题,继续来顶一顶,等个大佬!

改下html启动时先检查下是否支持webgl,支持了再加载cocos引擎

并不是不支持webgl,因为这个问题是偶发的,也就是说同一台设备在同样的网络环境下,可能现在不行刷新几次就可以了。因为之前没有碰到过这种情况,所以不太确定是不是因为我自身的项目存在什么问题造成了webgl获取上下文失败的