Android SharedPreferences保存登录状态

SharedPreferences是Android中一种数据持久化方法,采用键值对的方式存储数据,这里我以保存登录状态为例,简述SharedPreferences的使用。

首先,我们在用户登录时,保存SharedPreferences,向SharedPreferences.edit()中添加数据,SharedPreferences支持的数据类型如下:


其中要注意,不要每次新建不同Editor插入数据,否则会造成取不出数据。

这里Android建议使用apply()来代替commit(),因为commit()是立即存储数据,而apply()是在后台处理。

SharedPreferences sp = getSharedPreferences("login", Context.MODE_PRIVATE);
sp.edit()
    .putString("username", usernameView.getText().toString())
    .putString("password", passwordView.getText().toString())
    .apply();

当用户再次打开应用时,我们首先看SharedPreferences中是否有存储的数据,如果有我们就取出来设置到EditText中,实现记住密码功能,或是直接向服务器发送请求,从而实现自动登录。

SharedPreferences sp = getSharedPreferences("login", Context.MODE_PRIVATE);
usernameView.setText(sp.getString("username", null));
passwordView.setText(sp.getString("password", null));

猜你喜欢

转载自blog.csdn.net/baidu_34045013/article/details/80687522