重启最小化的android应用程序

时间:2014-07-20 19:22:43

标签: android login exit logout restart

在我的应用程序中,当用户点击退出按钮时,应用程序再次将他带到登录屏幕,当他从该登录屏幕预先显示后退按钮时,吐司显示"你必须登录才能继续。

我这样做是为了停止导航,因为如果可以进行后退导航,那么他将使以前的所有活动都活着。 之后,当我按下HOME按钮退出应用程序时,它会最小化应用程序,每当我启动应用程序时,它都会从LogIn屏幕开始。

我需要它从启动画面启动它...我该怎么办? 我在登录界面使用了这个代码,无法进行导航。

      @Override
 public void onBackPressed() {


    Toast.makeText(getApplicationContext(), "You Must login to continue!", Toast.LENGTH_LONG).show();

    }

使用" HOME BUTTON"是不是一个坏主意。退出申请?

1 个答案:

答案 0 :(得分:1)

这不是你应该如何处理" lougout" - 你有很多选择,但不要改变" BACK"如初。

您可以考虑使用" startActivityForResult"然后有一个LOGOUT的结果代码,在" login"之后在每个活动中检查所以你可以控制注销。

此外,您可以使用注销屏幕启动任务堆栈并直接进入"登录"如果用户没有登录,或者如果用户没有登录。然后,如果"注销"被调用,清除任务堆栈,放入"注销"在顶部它应该完成并转到"登录"仅

这样的事情:

Intent logoutIntent = new Intent(c.get(), Authenticate.class);
logoutIntent.putExtra(AUTH_STATUS, false);
logoutIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP
      | Intent.FLAG_ACTIVITY_CLEAR_TOP);        
startActivity(logoutIntent);

检查您的清单是否为singleTask活动:

    <activity   android:name=".Authenticate"
                android:launchMode="singleTask"
                android:label="@string/AuthenticateActName">
    </activity>

然后在验证中确保您的LOGIN变量重置并转到验证屏幕。

您可能会想出其他方法,但这些方法对我有用。