2013-05-02 80 views
0

我正尝试创建一个安卓游戏,但遇到关闭屏幕的问题。Android在不重新启动游戏的情况下关闭屏幕

目前我的游戏工作原理是这样的,当我按Home键时它会暂停,当您按下后退按钮时,它会停止并稍后重新开始。

现在我注意到,当我按下电源按钮关闭屏幕时,它会停止游戏,不关闭,当我重新启动屏幕时。 我想,以防止和使游戏只能暂停,当我关掉屏幕,

我当前的代码:

public void surfaceCreated(SurfaceHolder holder) { 
    if (!mGameIsRunning) { 
     mGameIsRunning = true; 
     loop = new GameLoop(getHolder(), this); 
     createSprites(); 
     loop.setRunning(true); 
     loop.start(); 

    } else { 
     resume(); 
    } 

} 

public void surfaceDestroyed(SurfaceHolder holder) { 
    pause(); 
} 

public void pause() { 
    loop.setRunning(false); 
    while (true) { 
     try { 
      loop.join(); 
     } catch (InterruptedException e) { 
     } 
     break; 
    } 
    loop = null; 
} 

public void resume() { 
    loop = new GameLoop(getHolder(), this); 
    loop.setRunning(true); 
    loop.start(); 
} 
+0

没有人知道任何其他sugestions? – schmru 2013-05-05 19:31:11

回答

0

它可能是您的应用程序正在失去它的OpenGL上下文并具有何时重启你重新打开它。正如我记得的那样,如果您使用“主页”按钮,上下文会保存一段时间,但当您使用后退按钮或使设备进入睡眠状态时,上下文将被删除。

您可以尝试使用'home'按钮并将其放置在背景中一段时间​​,您的测试可能是这样的:'home'按钮 - >立即切换回作品。尽量给它一些时间让情境下降。

再一次,我不确定。自从我完成了任何Android编程以来,这已经有一段时间了。

+0

不,我离开它几分钟,它仍然有效,但会尽量让它更长。仍然感谢您的帮助 – schmru 2013-05-02 20:01:54

相关问题