Cocos游戏嵌套上Android页面之后, 安卓dialog在上面, cocos游戏界面在下;
锁屏或切后台,然后重新打开App,dialog背景会变黑,但是Android界面的dialog正常显示.
解决方案:
Cocos2dxActivity 中添加下面代码即可解决.
@Override
protected void onRestart() {
super.onRestart();
Cocos2dxHelper.onResume();
mGLSurfaceView.onResume();
}
@Override
protected void onStop() {
super.onStop();
Cocos2dxHelper.onPause();
mGLSurfaceView.onPause();
}
效果图对比:
正常显示:
锁屏或前后台切换之后黑屏效果:
原理分析:
Cocos游戏的 Cocos2dxActivity 类生命周期监测,弹出SDK界面之后锁屏或反复前后台切换,他的声明周期如下,实质上是由于Cocos2dxActivity 在切后台时没有走OnPause(),重新启动时没有走onRessume()生命周期,导致游戏页面无法渲染,所以会黑屏.
扫描二维码关注公众号,回复:
15991391 查看本文章