安卓SharedPreferences

农村四月闲人少,勤学苦攻把名扬。这篇文章主要讲述安卓SharedPreferences相关的知识,希望能为你提供帮助。
SharedPreferences,翻译过来是共享偏好,是用于以键值对的形式存储应用偏好信息的API,使用方法一般是先获取指向某个文件的SharedPreferences对象,然后使用该对象读写键值对。
获取SharedPreferences对象有三个方法可供选择:

  • Context类的getSharedPreferences()
    • 可以指定文件名name和打开模式modemode目前只能指定MODE_PRIVATE,其他均被弃用
    • 对同一个文件多次调用只会返回一个实例,线程安全
    • 如果SharedPreferences目录(/data/data/< package name> /shared_prefs/)不存在,会先创建
    • 如果指定的文件不存在,将会在调用edit()方法时创建
  • Activity类的getPreferences()
    • 默认使用活动类名作为文件名,只能指定打开模式mode
    • 该偏好文件属于调用的活动,是私有的
  • PreferenceManager类的getDefaultSharedPreferences
    • 传入context
    • 获取整个应用的默认共享偏好设置文件
写入SharedPreferences通过调用SharedPreferences对象的edit()方法来获取SharedPreferences.Editor对象,然后使用其提供的putInt()putString()等方法写入键和值,最后调用apply()commit()提交更改。apply()会将对SharedPreferences对象的修改异步写入磁盘,而commit()会同步写入磁盘,所以可能会阻塞主线程。
读取SharedPreferences【安卓SharedPreferences】通过直接调用SharedPreferences对象的getInt()getString()等方法来获取键对应的值,需要传入键和默认值。

    推荐阅读