私はandengineを使って開発中のゲームです。電源ボタンを押しても、onPause()
メソッドが呼び出されません。問題を解決するにはどうすればよいですか?
@Override
protected void onPause() {
//this method is not calling when press power button
super.onPause();
this.mEngine.onPause() ;
}
奇妙なことに、それが呼び出されていないということは聞いたことがありません。ちょっと調べさせてください。
オーケー、押す力は常に を呼び出す必要onPause()
があります。コードに何らかのバグがあるようです。すべてのステップに従うために、いくつかのログ呼び出しを追加していただけますか。DDMS ログを印刷します。
その他の考えられる問題:
onPause()
電源ボタンを押すと、一部のデバイスが誤動作して 2 回呼び出すようです。
この場合、powerManager を使用して、画面が実際にオフになっているかどうかを確認してください。
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
if (pm.isScreenOn()) {
//now do stuff
}
たぶんonPause()
呼び出されますonCreate()
が、直後に呼び出されますか?
デバイスの電源をオフにすると、ロック画面が表示されます。これは通常、ディスプレイを特定の向きに強制します。画面が現在その向きになっていない場合は、変更する必要があり、トップ アクティビティの構成を適切に変更して一致させます。
次のように設定変更を追加できます。
android:configChanges="keyboardHidden|orientation" android:configChanges="keyboardHidden|screensize"
これが起こらないことを確認するために。