关闭应用程序后管理会话而不在android中注销

时间:2013-08-06 09:10:52

标签: android facebook-android-sdk

如何在Android中维护会话。例如,在我的应用程序中,用户可以使用普通登录或Facebook登录登录。使用该应用程序后,用户可以通过注销会话来关闭应用程序,或者用户只需关闭应用程序而无需注销。这样用户可以在没有登录的情况下进入主屏幕进行下一次。

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

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

您可以在SharedPreferences中进行维护。请查看this以供参考。

例如,要保存用户名,密码和会话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);