小伙伴们,在前面的一系列文章中我们分别介绍了Android视图控件、Android布局、Android四大组件,本文开始我们介绍一下Android中的数据存储。
SharedPreferences是Android平台上一种轻量级的数据存储方式,用于保存和读取应用程序的配置信息或其他简单的持久化数据。它的主要特点包括:
使用SharedPreferences进行数据存储和读取的基本步骤如下:
获取SharedPreferences对象:
其中,"文件名"是用于标识保存数据的XML文件名,在同一个文件名下存储的数据将共享访问。
存储数据:
可以根据需要使用不同的put方法来存储不同类型的数据。
读取数据:
通过getString、getInt、getBoolean等方法可以根据键获取存储的对应类型的值,并指定默认值,以防获取不到数据时返回设定的默认值。
常见属性:
MODE_PRIVATE
: 表示创建的SharedPreferences文件只能被当前应用程序访问,其他应用无法读取。常见方法:
getSharedPreferences(String name, int mode)
: 获取SharedPreferences对象,参数包括文件名和存储模式。edit()
: 返回一个SharedPreferences.Editor对象,用于修改SharedPreferences中的数据。putString(String key, String value)
: 存储字符串类型的数据。putInt(String key, int value)
: 存储整型数据。putBoolean(String key, boolean value)
: 存储布尔型数据。apply()
: 提交保存修改的数据,异步操作,不会阻塞主线程。commit()
: 提交保存修改的数据,同步操作,会阻塞主线程。getString(String key, String defaultValue)
: 获取存储的字符串类型数据,第二个参数为默认值。getInt(String key, int defaultValue)
: 获取存储的整型数据,第二个参数为默认值。getBoolean(String key, boolean defaultValue)
: 获取存储的布尔型数据,第二个参数为默认值。contains(String key)
: 判断指定键是否存在于SharedPreferences中。remove(String key)
: 移除指定键及其对应的值。clear()
: 清除所有保存的数据。以上代码中,在onCreate()
方法中,首先调用saveData()
方法存储名字数据到SharedPreferences。然后调用loadData()
方法读取保存的名字数据,并通过System.out.println()
打印出来。
在这个例子中,我们将SharedPreference的文件名指定为"MyPrefs",并且定义了名字的键名"key_name"。可以根据需求修改这些值。
请注意,在实际应用中,AndroidManifest.xml文件中要注册MainActivity以便正确运行。
通过这个简单的案例,你可以学习到如何使用SharedPreferences存储和读取数据。
通过SharedPreferences,我们可以方便地进行简单数据的存储和读取,适用于保存应用程序的配置信息、用户偏好设置等场景。但需要注意,它并不适合存储大量复杂的数据,对于复杂的数据存储需求,建议使用SQLite数据库或其他更适合的数据存储方式。