アプリに問題があります。キャンバスに描画するための SurfaceHolder があります。
surfaceCreated メソッドの下で、thread.start();
を呼び出します。
surfaceDestroyed メソッドの下で、thread.join();
を呼び出します。
アプリを実行してホーム キーを押すと、メソッドが呼び出されますsurfaceDestroyed。
問題は、後でアプリを再度実行しようとすると、スレッドが既に開始されているという例外が発生することです。どうしてこれなの?を使用して、スレッドが既に実行されているかどうかをテストしていますisAlive()。thread.join行をに置き換える必要がありthread.waitますか?
もしそうなら、スレッドを再開するのではなく、どうすればスレッドを再開できsurfaceCreatedますか?