故事背景:
做的云鸡h5游戏上线后,ios开发大佬找过来说是WebGL引起webview崩溃的现象很频繁,截图如下:
然后3月26号和4月1号分别是我们上线游戏的日子(手动捂脸),后来发现是因为我们在游戏进入后台时没有停止webgl的渲染,而苹果规定:如果尝试在后台执行OpenGL ES命令,应用程序将被终止->官方文档
解决方法:
通过调用app的生命周期方法,在进入前台时恢复egret心跳,进入后台时暂停心跳,代码如下:
window['onStart'] = () => {
egret.ticker.resume(); // 恢复心跳
...
}
window['onStop'] = () => {
egret.ticker.pause(); // 暂停心跳
...
}}