Android:睡眠后需要恢复游戏

时间:2012-10-10 06:07:42

标签: android android-activity activity-lifecycle

我希望我的游戏能够从电话进入睡眠状态之前的位置继续(用户按下电源按钮)。我的游戏与主页按钮工作正常。当用户按下主页按钮并再次打开游戏时,游戏将从应有的位置开始。但在用户按下电源按钮(在谷歌htc nexus一个)的情况下,它崩溃。但是当我在三星Galaxy平板电脑10上测试游戏时,它运行正常。

LogCat中,我可以观察到当用户按下galaxy平板电脑上的电源按钮时,会调用 onPause()。当用户再次按下 onResume()时,这是正常的。

但是在google nexus上,当用户按下电源按钮时, onPause(),onResume(),onPause()分别在进入睡眠状态之前被调用。当用户再次按下电源按钮时,不会调用任何内容。

请告知我如何解决问题。 提前致谢

修改

默认情况下,仅在具有纵向方向的设备上观察到此问题。

1 个答案:

答案 0 :(得分:0)

我设法通过回答this问题来解决问题。应用此解决方案后,系统不再崩溃。但在系统唤醒后,交换了宽度和高度。所以另外我有覆盖

@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
    if(width>height)
         gl.glViewport(0, 0, width, height);
    else gl.glViewport(0, 0, height, width);

}    

通过这种方式,我让我的游戏回归横向。