我有一个主要活动(Main)和另一个从 Main 调用的活动(Sub)
startActivityForResult(new Intent(this, SubActivity.class), 25);
当我在 Sub 时,我终止了进程(使用任务管理器或 by adb shell kill <pid>
),然后重新打开应用程序,我立即被带到 Sub。
在 Sub 中,我有这段代码可以回调到 Main 活动:
setResult(RESULT_OK, data);
finish();
onActivityResult
如果我没有终止进程,我会收到 requestCode (25)、resultCode (RESULT_OK) 和数据。但是在这种情况下,我被带到主要活动,但onActivityResult
没有被调用。
这是Android的工作方式(我没想到),还是我的方法有问题?
更新:这发生在我的 Nexus One、CyanogenMod 7.0.2、Android 2.3.3 上。我尝试使用模拟器 API 10,Android 2.3.4,它按预期工作,onActivityResult
在我终止进程后仍然被调用。