想問一下app的自動登入功能是怎麼做的, 把使用者名稱和密碼存在本地?
回複內容:
想問一下app的自動登入功能是怎麼做的, 把使用者名稱和密碼存在本地?
一般是先登入一次,拿到一個授權 token。用戶端儲存這個 token,以後每次請求時,都帶上這個 token。
如果請求時發現 token 到期了,app 再讓使用者跳轉至登入頁面重新授權。
具體到token的實現,可以考慮採用 jwt
private SharedPreferences sharedPreferences;private SharedPreferences.Editor editor;
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); sharedPreferences = getSharedPreferences("config", MODE_PRIVATE); editor = sharedPreferences.edit(); //開啟app時讀取儲存的登入資訊 String username = sharedPreferences.getString("username", ""); String password = sharedPreferences.getString("password", ""); if(username != "" && password != ""){ login(username,password); //login就是你要登入時的代碼 }}
登入按鈕被點擊時 取得username和password內容 editor.putString("username", username); editor.putString("password", password); editor.commit() //登入時,儲存使用者名稱和密碼