SharedPreferences 的简单使用

SharedPreferences 是 Android 平台上一个轻量级的存储类,用来保存应用的一些常用配置;

SharedPreferences 提供可以直接保存的数据格式有Stringintbooleanfloatlong以及Set<String>
第一个参数为存储文件的名字、第二个为操作模式 {
MODE_PRIVATE:只可被自己访问
MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件
MODE_WORLD_READABLE:则该配置文件除了自己访问外还可以被其它应该程序读取。
MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入
}

关于使用 apply 还是使用 commit

  1. apply 没有返回值而 commit 返回 boolean 表明修改是否提交成功
  2. apply 是将修改数据原子提交到内存, 而后异步真正提交到硬件磁盘, 而 commit 是同步的提交到硬件磁盘,因此,在多个并发的提交 commit 的时候,他们会等待正在处理的 commit 保存到磁盘后在操作,从而降低了效率。而 apply 只是原子的提交到内容,后面有调用 apply 的函数的将会直接覆盖前面的内存数据,这样从一定程度上提高了很多效率。
  3. apply 方法不会提示任何失败的提示。 由于在一个进程中,sharedPreference 是单实例,一般不会出现并发冲突,如果对提交的结果不关心的话,建议使用 apply ,当然需要确保提交成功且有后续操作的话,还是需要用 commit 的。

1
2
3
4
5
6
7
8
9
//保存数据
SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREF_DATA_SET_CHANGED, MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("name", "hluglk");
editor.apply();
//获取数据
String name=sharedPreferences.getString("name", "默认值:三森");
0%