私のアプリには、ログインとログアウトのメカニズムがあります。ユーザーがログアウトボタンを押したときにタスクスタックをクリアして、アプリケーションを再度起動したときに再度ログインする必要があるようにしたい. オンラインで調べたところ、ほとんどの場合、人々はこれを使用してそれを達成していました。
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();
このコードでは、次のことが起こります。
ホーム - >ログインアクティビティ(メインランチャーアクティビティ)[ユーザー名とパスワードのフィールドは空白です] - >ログアウトをクリックしたとき - >ホーム、そして私がこれを行うとき:
ホームから->アプリを起動します(ログイン画面にユーザー名とパスワードがまだ表示されています)->戻るボタンを押してホームに移動します->アプリを再度起動します->ユーザー名とパスワードをクリアします
ログアウト機能を記述するより良い方法は何でしょうか?