我有我的启动器活动A,从那里开始活动B(基于fb登录)。我在开始B之前完成了活动A.我也尝试使用诸如
之类的标志intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
然而,有时在使用活动B时,所有突然的活动A都会弹出。我不知道在哪里调试或在哪里看到为什么A突然被带到前面?有什么提示可以跟踪这个吗?
我希望共享代码,但共享数千行是没有意义的:)
编辑:
我试图简化这个问题。这里有更多细节,实际上有3个活动。 A-> B-&以及c
A是启动器活动,它会在您选择LOGIN后将您带到活动B. B你把信息,然后带你到C. C是我想留下来的地方。不知何故,活动A在一段时间后出现。如果我点击后退按钮,它会将我带回活动C(这就是我想要的)
活动A到B代码:
intent = new Intent(LoginRegisterActivity.this, LoginActivity.class);
startActivity(intent);
活动B到C代码:
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
答案 0 :(得分:0)
Intent.FLAG_ACTIVITY_CLEAR_TASK
显然,对于低于11的API,该标志会被忽略。您可以使用IntentCompat.FLAG_ACTIVITY_CLEAR_TASK
并从支持库导入导入android.support.v4.content.IntentCompat;
以便在API 10上工作。