我創建在用戶登錄和註銷,數據使用PHP Web服務來自MySQL服務器的應用程序,現在我想,當用戶註銷,我使用如何在Android登錄/註銷中管理會話?
intent.putExtra("SESSION_ID", sessionId);
保持會話時,用戶登錄,並摧毀它
如何重置它註銷 這是否將作爲會議或我必須做別的事情
我創建在用戶登錄和註銷,數據使用PHP Web服務來自MySQL服務器的應用程序,現在我想,當用戶註銷,我使用如何在Android登錄/註銷中管理會話?
intent.putExtra("SESSION_ID", sessionId);
保持會話時,用戶登錄,並摧毀它
如何重置它註銷 這是否將作爲會議或我必須做別的事情
您可以使用共享偏好設置或復位會話
對於保存會話共享偏愛登錄
SharedPreferences.Editor editor = getSharedPreferences(YOUR_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("session", sessionId);editor.apply();
對於復位會話共享的喜好在註銷
SharedPreferences.Editor editor = getSharedPreferences(YOUR_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("session", "0");editor.apply();
對於檢索偏好
SharedPreferences prefs = getSharedPreferences(YOUR_PREFS_NAME, MODE_PRIVATE);
String sessionData= prefs.getString("session", null); //SessionId that you saved in preference
使用SharedPreferences
數據來管理session
。
下面是一個例子:
1.創建一個名爲SessionManager
類象下面這樣:
public class SessionManager {
// LogCat tag
private static String TAG = SessionManager.class.getSimpleName();
Context context;
// Shared Preferences
SharedPreferences sharedPreferences;
SharedPreferences.Editor editor;
// Shared pref mode
int PRIVATE_MODE = 0;
// Shared preferences file name
private static final String PREF_NAME = "TEST";
private static final String KEY_IS_LOGGED_IN = "IS_LOGGED_IN";
public SessionManager(Context context) {
this.context = context;
sharedPreferences = context.getSharedPreferences(PREF_NAME, PRIVATE_MODE);
editor = sharedPreferences.edit();
}
public void setLogin(boolean isLoggedIn) {
editor.putBoolean(KEY_IS_LOGGED_IN, isLoggedIn);
// commit changes
editor.commit();
Log.d(TAG, "User login session modified!");
}
public boolean isLoggedIn() {
return sharedPreferences.getBoolean(KEY_IS_LOGGED_IN, false);
}
}
2.更新session
狀態使用setLogin()
方法。
LOGIN:
SessionManager sessionManager = new SessionManager(getApplicationContext());
sessionManager.setLogin(true);
註銷:
SessionManager sessionManager = new SessionManager(getApplicationContext());
sessionManager.setLogin(false);
這裏是一個很好的教程約Android Login and Registration with PHP, MySQL and SQLite。
希望這會有所幫助〜
使用sharedPreferences可以簡單得多。創建sharedPreference變量並在註銷時清除它。
SharedPreferences settings = getSharedPreference("filename", 0);
SharedPreferences. Editor editor = settings.edit();
editor.putString("varName",value);
後來,當會話註銷
editor.clear();
對於SET /登錄
SharedPreferences pref=getApplicationContext.getSharedPreferences("Your PREF_NAME",Private_Mode);
SharedPreferences.Editor editor=pref.edit();
editor.putString("SESSION_ID", sessionId);
editor.commit();
對於註銷
SharedPreferences pref=getApplicationContext.getSharedPreferences("Your PREF_NAME",Private_Mode);
SharedPreferences.Editor editor=pref.edit();
pref.edit().remove(KEY_CUSTOMER_ID);
editor.clear();
editor.commit();
http://www.androidhive.info/2012/ 08 /使用共享-喜好Android的會話管理-/ –