SharedPreferences是Android平台上一个轻量级的存储类,它是以一种简单、透明的方式来保存一些用户个性化设置的字体、颜色、位置等常用配置。它主要用于系统配置信息的保存,如一般的应用程序都会提供“设置”或者“首选项”这样的界面;用户登录时输入了用户名、密码,下次登录时保留这一次的输入信息。这些设置大多是通过轻量级的存储类Preferences来完成保存功能。
SharedPreferences主要是以键值对来存储应用程序的配置信息,它只能存储基本数据类型。一个程序的配置文件仅可以在本应用程序中使用,或者说只能在同一个包内使用,不能在不同的包之间使用。实际上,SharedPreferences是采用了XML格式将数据存储到设备中,在DDMS中的FileExplorer中的/data/data/<packagename>/shares_prefs下可查看所存储的信息。下面介绍获取SharedPreferences对象的两个方法,详见表4-5、4-6所示。
表4-5 获取SharedPreferences对象的两个方法
表4-6 android文件存储的4种方式
在代码中如何具体使用SharedPreferences呢?如果要读取配置文件信息,只需直接使用SharedPreferences对象的getXXX()方法即可,而如果要写入配置信息,则必须先调用SharedPreferences对象的edit()方法,使其处于可编辑状态,接着再调用putXXX()方法写入配置信息,最后调用commit()方法提交更改后的配置文件。需要注意的是要实现页面传值及读取文件信息的功能(即在一个页面保存,另外一个页面可以读取信息)则需使用第一种Context.getSharedPreferences(Stringname,intmode)方式,且访问权限至少是可读权限(MODE_WORLD_READABLE)。下面通过一个示例讲述SharedPreferences具体的使用过程,示例代码运行结果如图4-11和图4-12所示。
图4-11 SharedPreferences保存用户信息
图4-12 第二次启动程序,显示用户名(www.xing528.com)
首先,介绍如何通过xml布局实现这一效果,如代码清单4-25所示。
代码清单4-25 SharedPreferences保存信息示例(第4章\Demo_04_11)main.xml
其次,介绍Activity java代码如何配合布局实现SharedPreferences保存信息这一功能,如代码清单4-26所示。
代码清单4-26 SharedPreferences示例(第4章\Demo_04_11)MainActivity.java
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。