我有一个覆盖 的活动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,但我不确定。
谢谢,
拉贾特