2010-04-09 231 views
3

我有一個需要用戶註冊的應用程序。我已經將應用程序連接到了我的服務器中的PHP,以執行註冊/登錄的邏輯,所以這根本不是問題。如何保持用戶登錄會話?

但是,我想保持用戶在本地的會話,所以用戶在每次運行應用程序時都不必再次登錄。

所以,我想是這樣的:

  • 首次用戶,他打開應用程序,註冊和登錄。
  • 在應用程序中做一些事情並關閉它。
  • 再次打開應用程序,用戶被識別出來,所以他不需要再次登錄。

我只需要存儲一個ID和一個用戶名(都在登錄php方法中從DB中獲取)。什麼是最好的方式來做到這一點?

我想過做一個自定義首選項,將數據存儲在文件甚至本地數據庫(sqlite)中。有什麼建議麼?

回答

6

是的,偏好將工作。在您的onCreate()

mPrefs = PreferenceManager.getDefaultSharedPrefs(this); 

而且在某些函數獲取用戶登錄後呼籲:

用於此目的
SharedPreferences.Editor edit = mPrefs.edit(); 
edit.putString("app_username", username); 
edit.putInt("app_userid", userId); 
edit.commit(); 
0

使用共享偏好.. 嘗試下面的代碼....:

PreferenceManager pm = PreferenceManager.getDefaultSharedPrefs(this); 
SharedPreferences.Editor edit = pm.edit(); 
edit.putString("user", username); 
edit.putInt("pwd", password); 
edit.commit();