2017-01-30 30 views
0

當用戶第一次登錄我保存它是這樣的:每次用戶打開我的應用程序時,我是否需要驗證userpreferences登錄名和密碼?

      SharedPreferences pref = getApplicationContext().getSharedPreferences("pref01", MODE_PRIVATE); 
          SharedPreferences.Editor editor = pref.edit(); 
          editor.putString("username", username); 
          editor.putString("password", password); 
          editor.apply(); 

下一次他打開應用程序,我在loginactivity自動獲得該用戶名值,自動,如果用戶名是通過共享偏好設置打開的用戶區域。

因此,每當用戶上傳圖片時,在他的帳戶上進行一些更改我將此用戶名存儲在userpreferences中存儲到PHP中。

我的問題是,可以嗎?或者我需要檢查用戶和密碼,每次用戶打開我的應用程序?用戶可以更改共享首選項嗎?因爲,例如,如果用戶'瑪麗亞'將其更改爲'喬希',她將自動登錄喬希帳戶...是否有可能發生?

回答

2

而不是保存登錄詳細信息使用令牌。當用戶登錄時,然後響應api調用發送從服務器本身生成的令牌&將其保存爲首選項。在每個其他API中使用此標記作爲身份驗證密鑰。所以用戶也不能改變它,即使令牌被改變,服務器也會知道該令牌是inviladate作爲令牌生成邏輯,然後將用戶從應用重定向UI註銷到登錄屏幕。

相關問題