在我的应用程序中,我有一个登录和注销机制。我想在用户按下注销按钮时清除任务堆栈,这样当他再次启动应用程序时,他将不得不再次登录。我在网上查了一下,大多数情况下人们都是用这个来完成的:
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
finish();
使用此代码会发生这种情况:
主页->登录活动(主启动器活动)[用户名和密码字段为空白]->单击注销->主页,然后当我这样做时:
从主页->启动应用程序(在登录屏幕中,用户名和密码仍然存在)->按返回按钮导航到主页->再次启动应用程序->用户名和密码已清除
编写注销功能的更好方法是什么?