1

如何在 Android 中维护会话。例如在我的应用程序中,用户可以使用普通登录或 Facebook 登录方式登录。使用该应用程序后,用户可以通过注销会话来关闭应用程序,或者用户可以直接关闭应用程序而无需注销。以便用户下次无需登录即可进入主屏幕。

当我的应用程序在未注销会话的情况下关闭并在两天后打开时,用户会话丢失并且我的应用程序崩溃。当它正确注销然后打开时,应用程序工作正常。如何在不注销的情况下关闭会话?

4

2 回答 2

0

首先,您可以使用共享首选项来存储用户信息,以便下次它不会要求登录。以及您的下一个问题处理会话。因此,在您的服务器端,您将在特定时间段后破坏会话。你可以做什么使用时间戳。就我而言,我是这样使用它的:我的服务器在 3 小时后自动销毁会话。因此,当用户登录到我的应用程序时,我会为此保存时间戳。下次我检查时间戳是否过期。如果它已过期,则首先代表用户在后台调用登录。这样该服务器将为用户创建新会话。

于 2013-08-06T09:18:04.333 回答
0

您可以在SharedPreferences.Look中维护以供参考。

例如,要保存用户名、密码和会话 ID,您可以:

 SharedPreferences pref = context.getSharedPreferences("Session Data", MODE_PRIVATE);
 SharedPreferences.Editor edit = pref.edit();
 edit.putString("User Name", username);
 edit.putString("Password", password);
 edit.putInt("Session ID", session_id);
 edit.commit();

并得到他们

 SharedPreferences pref = context.getSharedPreferences("Session Data", MODE_PRIVATE);
 username = pref.getString("User Name", "");
 password = pref.getString("Password", "");
 session_id = pref.getInt("Session ID", 0);
于 2013-08-06T09:24:02.110 回答