偏好设置 SharedPreferences

对于Android 的存储方式一般用到的是五种:

1 .使用偏好设置 SharePreferences 来保存键值对的数据

2. 流文件存储

3.使用ContentProcider存储数据

4.网络存储数据

5.数据库保存结构化数据


下面是对SharePreferences的存储方式的使用

1. 使用Context.getSharedPreferences方法获取SharedPreferences对象,如   MiMiCache.getContext().getSharedPreferences("**", Context.MODE_PRIVATE);  //**代表文件名

2. 使用edit方法获取SharedPreferences.Editor对象。

3. 通过Editor接口保存key-value对。

4. 通过commit方法提交要保存的key-value对。


以下是一个关于SharePreferences的工具类:


public class Preferences {
    private static final String KEY_USER_ACCOUNT = "account";
    private static final String KEY_USER_TOKEN = "token";
    private static final String LOGIN_TIME = "loginTime";
    private static final String LOGIN_TYPE = "type";
    public static void saveLoginTime(String loginTime) {
        saveString(LOGIN_TIME, loginTime);
    }
    public static void saveLoginType(String type) {
        saveString(LOGIN_TYPE, type);
    }
    public static void saveUserAccount(String account) {
        saveString(KEY_USER_ACCOUNT, account);
    }
    public static void saveUserToken(String token) {
        saveString(KEY_USER_TOKEN, token);
    }
    public static String getLoginType() {
        return getString(LOGIN_TYPE);
    }
    public static String getUserAccount() {
        return getString(KEY_USER_ACCOUNT);
    }
    public static String getUserToken() {
        return getString(KEY_USER_TOKEN);
    }
    public static String getLoginTime() {
        return getString(LOGIN_TIME);
    }
    private static void saveString(String key, String value) {
        SharedPreferences.Editor editor = getSharedPreferences().edit();
        editor.putString(key, value);
        editor.commit();
    }

    private static String getString(String key) {
        return getSharedPreferences().getString(key, "");
    }
    static SharedPreferences getSharedPreferences() {
        return MiMiCache.getContext().getSharedPreferences("**", Context.MODE_PRIVATE);
    }
}

工具类写好后只要在需要的地方调用即可

private void saveLoginInfo(final String username,final String password){
    Preferences.saveUserAccount(username);
    Preferences.saveUserToken(password);
}
Preferences.getUserAccount()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值