Eclipse Version: 3.7.2
Android端末: docomo SC-03D (Galaxy SII LTE)
Tree PuzzleをAndroidに移植しようとしています。
今の実装では、ゲーム中にホームボタンを押してホームに戻ったり、電源ボタンを押してロックしたりすると、
そのままアプリが終了してしまいます。
特に電源ボタンを押すと、一瞬端末の動作がおかしくなります。(画面が残ったり、ホームのアイコンがしばらく出なかったり)
どのようにすればホームボタンや電源ボタンを押しても終了しないようにできますか?
SurfaceViewを用いてゲームを作っています。
ゲーム内の終了ボタンで終了させるため、スレッドのループを抜けたらKillProcessしています。
再現するプロジェクトを添付します。
【Android】ロックしてもアプリを終了しないようにする
【Android】ロックしてもアプリを終了しないようにする
- 添付ファイル
-
- surfaceviewmintest.zip
- プロジェクトです。
- (152.97 KiB) ダウンロード数: 169 回
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 【Android】ロックしてもアプリを終了しないようにする
Activityクラスで構成されるAndroidアプリでは、アプリを終了しなくすることはできません。
例えば、スマホを傾けて画面の向きが変わるときにもActivityが再起動される仕組みになっています。
終了前の状態を記録して、再起動後復元する仕組みはアプリケーション側で実装することになります。
ネットで画面の向きの変更に対応するサンプルプログラムを探せばいくつかの方法が見付かると思います。
KillProcessしたらVMごと強制終了すると思うので悪影響ありそうな気がします。
例えば、スマホを傾けて画面の向きが変わるときにもActivityが再起動される仕組みになっています。
終了前の状態を記録して、再起動後復元する仕組みはアプリケーション側で実装することになります。
ネットで画面の向きの変更に対応するサンプルプログラムを探せばいくつかの方法が見付かると思います。
KillProcessしたらVMごと強制終了すると思うので悪影響ありそうな気がします。
Re: 【Android】ロックしてもアプリを終了しないようにする
http://www.techdoctranslator.com/androi ... me-changes
ここのonRetainNonConfigurationInstanceを使用する方法でほぼうまくできました。
(「ほぼ」の部分はつぎのトピックで質問します)
ありがとうございました。
ここのonRetainNonConfigurationInstanceを使用する方法でほぼうまくできました。
(「ほぼ」の部分はつぎのトピックで質問します)
ありがとうございました。
- 添付ファイル
-
- surfaceviewmintest_new.zip
- プロジェクトです。
- (154.88 KiB) ダウンロード数: 185 回
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)