android_sp模块介绍

Author Avatar
夜孤黎 1月 04, 2018
  • 在其它设备中阅读本文章

android_sp模块中封装了一系列使用SharedPreferences保存数据的方法,特点在于可以直接保存数据类与储存时加密数据。

1、如何使用

  1. 创建继承自BaseSet的数据类:

    public class AccountSet extends BaseSet {
    private String username = "";
    private String password = "";
    
    public String getUsername() {
     return username;
    }
    
    public void setUsername(String username) {
     this.username = username;
    }
    
    public String getPassword() {
     return password;
    }
    public void setPassword(String password) {
     this.password = password;
    }
    }
    
  2. 初始化SharedPreferencesHandler:

    SharedPreferencesHandler handler = SharedPreferencesHandler.getInstance();
    handler.initSecretKey(getApplicationContext(), "");
    
  3. 使用SharedPreferencesHandler保存数据:

    AccountSet set = new AccountSet();
    set.setUsername("kyon");
    set.setPassword("asd456@#$%sdfgsgfs");
    try {
    handler.saveSetting(context, set);
    } catch (IOException e) {
    }
    
  4. 使用SharedPreferencesHandler读取保存的数据:

    try {
     AccountSet set = handler.getSettings(getApplicationContext(), AccountSet.class);
    } catch (InstantiationException e) {
     e.printStackTrace();
    } catch (IllegalAccessException e) {
     e.printStackTrace();
    } catch (IllegalArgumentException e) {
     e.printStackTrace();
    }
    

2、数据加密说明

  1. sp的键名使用了SHA512加密;
  2. sp的键值使用了AES加密,AES加密所需的key则是由当前设备的IMEI值经过一系列算法生成;

3、使用注意

使用需要权限<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

如何使用:

api 'com.sumavision.android_utils:android_utils:v1.x.x'

查看源码:

svn://192.165.152.13/sumard5/Project/Tetris/trunk/platform/android-platform/AndroidPlatform/android_utils

This blog is under a CC BY-NC-SA 3.0 Unported License
本文链接:http://yeguli.cn/2018/01/04/android-sp模块介绍/