android数据存储之SharedPreferences
一:SharedPreferences
- SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。SharedPreferences 可以用来进行数据的共享,包括应用程序之间,或者同一个应用程序中的不同组件。比如两个activity除了通过Intent传递数据之外,也可以通过SharedPreferences来共享数据。
- SharedPreferences数据的四种操作模式
- Context.MODE_PRIVATE
- Context.MODE_APPEND
- Context.MODE_WORLD_READABLE
-
Context.MODE_WORLD_WRITEABLEContext.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件.MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入;
-
获取SharedPreferences的两种方式:1 调用Context对象的getSharedPreferences()方法2 调用Activity对象的getPreferences()方法两种方式的区别:调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组件共享.调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用.
二:例子
- 本次写2048游戏,在其中使用SharedPreferences来存储最大值;
- 数据写入:Bestgrate为int型,当Bestgrate大于16是,进行存储数据;
- 数据取出(只需取出一次):