をオーバーライドするアクティビティがあり、アプリを終了する前にクリーンアップを行う必要があるため、onBackPressed()
この関数内で明示的に を呼び出します。finish()
BACK
アプリを正常に実行してキーをクリックすると、アプリは正常に終了します。
次のコマンドでモンキーツールを実行すると、
adb shell monkey -v --pct-syskeys 100 -p com.my.app 100
ログによると、onBackPressed()
関数は呼び出されますがfinish()
、アクティビティ/アプリは閉じません。私はいつか問題が何であるかを理解しようとしてきましたが、今のところできませんでした。どんな助けでも大歓迎です。
編集:コメントに従って、onBackPressed()
コードを投稿しています:
@Override
public void onBackPressed() {
if (bIsBackKeyPressed)
return;
// do some clean up
bIsBackKeyPressed = true;
finish();
}
bIsBackKeyPressed
フラグを使用している理由は、モンキー ツールがBACK
キーを複数回送信するためです。
これは、キーと一緒に他のキーの押下と関連して発生する可能性がありますが、それBACK
についてはわかりません.
ありがとう、
ラジャス