启动另一个活动后调用finish()有时会起作用

时间:2015-04-22 18:38:17

标签: android android-activity

我有一个处理自动登录的启动画面。如果用户已登录,则会通过以下代码将s / he直接发送到主活动:

Intent intent = new Intent(activity, MainActivity.class);
activity.startActivity(intent);
activity.finish();

活动是要完成的活动(我没有使用this,因为这种方法在自动登录,手动登录,社交登录等方面很常见。)

然而,大约70%的时间,在完成主要活动后,闪屏仍然存在。在调试期间不会发生这种情况。看起来它很快就会发生,这就是为什么它在调试过程中可能永远不会发生的原因(因为一切都变慢了)。

记录帮助我看到,当问题发生时finish()确实被调用,但onDestroy()不是。

我尝试了FLAG_ACTIVITY_CLEAR_TOP,但它没有帮助。 noHistory确实有用,但带来了不需要的完成动画,而且,我真的想知道这段代码的问题是什么。我一直都在使用它,不知道它失败的原因。

提前致谢。

0 个答案:

没有答案