2017-03-08 111 views
-3

如何使用sharedPreferences創建登錄會話?使用sharedPreferences創建登錄會話

登錄電子郵件和密碼存儲在hostinger主機數據庫中。

登錄會話是指檢查用戶是否登錄。如果沒有去登錄頁面,則轉到活動頁面。

回答

0

最佳做法是在成功從服務器端登錄並在SharedPreferences中存儲該令牌後生成令牌。 每次用戶對服務器/ API進行新的調用時,都將標記包含在標頭中,並驗證標記是否有效/未過期。

爲了把價值共享偏好

SharedPreferences prefs = context.getSharedPreferences("NAME", FLAG); 
prefs.putString(key, value); 
prefs.commit(); 

要共享偏好

prefs.getString(key, "defaultValue"); 
0

成功登錄後,啓動下一個活動之前獲得附加價值:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); 
SharedPreferences.Editor editor = preferences.edit(); 
editor.putBoolean("isLogin",true); 
editor.commit(); 

,比啓動下一個活動。 現在在的onResume方法除了LoginActivity所有其他活動地址:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); 
if(!preferences .getBoolean("isLogin")) 
{ 
    //TODO go to loginActivity 
} 
//else continue 

完蛋了。

0

試試這個,

如果用戶登錄然後保存他的用戶ID爲SharedPreferences

SharedPreferences preferences = getSharedPreferences("AppPrefs", MODE_PRIVATE); 
    SharedPreferences.Editor PrefsEditor = preferences.edit(); 

    int user_id=101; 
    //set value 
    PrefsEditor.putInt("USERID", "user_id"); 

在閃屏檢查:

//get value 
    int user_id=preferences.getInt("USERID", -1); 

    if (user_id == -1) { 
     Intent intent = new Intent(mContext, LoginActivity.class); 
     startActivity(intent); 
     finish(); 
    } else { 
     Intent intent = new Intent(mContext, HomeActivity.class); 
     startActivity(intent); 
     finish(); 
    }