应用程序崩溃的后退按钮/活动和意图

问题描述:

我有开始了新的活动应用程序崩溃的后退按钮/活动和意图

Intent startAuthorization = new Intent(AndroidActivity, AuthorizeUser.class);  
startActivityForResult(startAuthorization,4711); 

当这种新的活动完成(一个OK按钮被点击)我叫

setResult(RESULT_OK, returnResult); 
finish(); 
一个Android应用程序

这工作正常。如果用户没有点击好的按钮,但使用手机的返回按钮(这个箭头指向左边),应用程序就会关闭。我在我的方法onActivityResult的第一行设置了一个断点,但调试器永远不会停在那里。我不知道问题出现在哪里 - 我怎么知道?有没有我必须覆盖来处理这个后退按钮的方法?

+1

你能粘贴您的应用程序崩溃的时刻logcat的输出? 应该有一个Java Exception向我们展示了关于为什么你的应用程序正在关闭的更多细节。 – Janusz 2010-06-18 09:43:41

+0

覆盖后退按钮的行为的方法称为onBackPressed()。我的怀疑是你以前的活动被破坏了,当你压回来时,你没有在栈上的那个活动,但是一个导致崩溃的空指针。有些日志会很有帮助。这是https://developer.android.com/reference/android/app/Activity.html#onBackPressed()中onBackPressed()的官方描述。 – 2017-06-07 09:31:02

如果您没有找到针对您的问题的更好解决方案,请尝试此操作。 覆盖onKeyDown事件,以防止您的应用回去当你按返回键

public boolean onKeyDown(int keyCode, KeyEvent msg){ 
    if((keyCode == KeyEvent.KEYCODE_BACK) || (keyCode == KeyEvent.KEYCODE_HOME) 
     || (keyCode == KeyEvent.KEYCODE_CALL)) 
     return false; 
    else 
     return true; 
}