0
私のゲームでは、スレッドがあります。このスレッドは、アクティビティ内のonPause()
で一時停止され、メインゲームクラスのsurfaceCreated
に再開されます。携帯電話のロックとロック解除後にアプリを再オープンするときのSurfaceViewの問題
@Override
public void surfaceCreated(SurfaceHolder holder) {
if(gt == null) {
gt = new GameThread(getHolder(), this);
gt.setRunning(true);
gt.start();
}
}
(ゲームから呼び出される)onPause:
public void onPause(){
... other stuff
if(gt != null){
try {
gt.setRunning(false);
gt.join();
gt = null;
}catch(Exception e){
e.printStackTrace();
}
}
}
しかし、画面がロックされ、ロックが解除されたときに、いくつかの理由で、スレッドが再び開始されません。最近のアプリのリストを開いてそこからアプリを開くと、スレッドが再開します。
どうしてこのようなことが起こり、どうすれば解決できますか?
それは働いた。ありがとう – Zoe