Android:如何在后退按钮上维护会话?

时间:2013-04-18 12:05:40

标签: android

我的应用包含两个活动类。从第一个活动用户可以登录,从第二个活动用户可以查看他们的项目详细信息。我正在使用注销按钮维护会话。在我的应用程序中如果用户点击第二个活动的后退按钮然后它进入应用程序部分(意味着主菜单),一段时间后用户点击我的应用程序图标,它转到第一个活动而不是第二个活动但用户没有注销。
I want user should go to second activity not first activity if user already login。我试过但是 不工作,我仍然在努力。
我怎么能做上面的事情,请有人给我答案。

2 个答案:

答案 0 :(得分:0)

您应该将当前用户的状态保存到SharedPreferences

在您的logIn活动的 onCreate 方法中,在调用 setContentView()之前,您可以检查用户是否已登录。如果这是 true 打开新的活动愿望 startActivity(),并在当前活动上调用完成()。如果不是继续正常的 setContentView()调用。

这样,如果她在SharedPreferences内部的状态设置为登录,则logIn活动将不可见。

答案 1 :(得分:0)

您不必显示第一个活动。但实际上总是存在主要活动。这应该决定是直接启动登录活动,还是直接显示用户内容。 您可以在开始登录或内容活动时立即使用主活动中的finish(),因此当用户推回()时,他将不再看到主要活动。

MainActivity extends Activity
{
 public void onCreate()
 {
   if isLogged()
     startActivity(new Intent(ContentActivity ...));
   else
     startActivity(new Intent(LoginActivity...));
   finish()
}

LoginActivity extends Activity
{
  ...
  public void onLoginSuccess(String username)
  {
     // called from dialog OK button and login process success
     startActivity(new Intent(ContentActivity ...));
     finish();
  }
}