Android存储方式-SharedPreferences
2016-07-13 11:01
411 查看
一、概述
SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。SharedPreferences提供了java常规的Long、Int、String等类型数据的保存接口。SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问。
提示:最终是以xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml处理时Dalvik会通过自带底层的本地XML
Parser解析,比如XMLpull方式,这样对于内存资源占用比较好。(来自百度百科)。
二、说明
1、获取SharedPreferences对象的方式:
(1)getSharedPreferences(String name, int mode);
获得的SharedPreferences对象可以被同一应用程序下的其他组件共享
(2)getPreferences(int mode);
获得的SharedPreferences对象只能在该Activity中使用
2、SharedPreferences常见的模式
(1)Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
(2)Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
(3)MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
(4)MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.
三、用法
1、保存数据:(需要editor)
<span style="font-size:18px;">SharedPreferences sp = getSharedPreferences("login", MODE_PRIVATE);
Editor editor = sp.edit();
editor.putBoolean("isChecked", true);
editor.putString("name", "admin");
editor.putString("pass", "123");
editor.commit(); //需要提交</span>
2、获取数据:(不需要editor)
SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。SharedPreferences提供了java常规的Long、Int、String等类型数据的保存接口。SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问。
提示:最终是以xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml处理时Dalvik会通过自带底层的本地XML
Parser解析,比如XMLpull方式,这样对于内存资源占用比较好。(来自百度百科)。
二、说明
1、获取SharedPreferences对象的方式:
(1)getSharedPreferences(String name, int mode);
获得的SharedPreferences对象可以被同一应用程序下的其他组件共享
(2)getPreferences(int mode);
获得的SharedPreferences对象只能在该Activity中使用
2、SharedPreferences常见的模式
(1)Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
(2)Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
(3)MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
(4)MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.
三、用法
1、保存数据:(需要editor)
<span style="font-size:18px;">SharedPreferences sp = getSharedPreferences("login", MODE_PRIVATE);
Editor editor = sp.edit();
editor.putBoolean("isChecked", true);
editor.putString("name", "admin");
editor.putString("pass", "123");
editor.commit(); //需要提交</span>
2、获取数据:(不需要editor)
<span style="font-size:18px;">SharedPreferences sp = getSharedPreferences("login", MODE_PRIVATE); Boolean isChecked = sp.getBoolean("isChecked", false); String name = sp.getString("name", null); //第2个参数表示默认值 String pass = sp.getString("pass", null);</span>
相关文章推荐
- Android开发中4个常用的工具类【Toast、SharedPreferences、网络及屏幕操作】
- Android使用SharedPreferences存储数据的实现方法
- Android持久化技术之SharedPreferences存储实例详解
- Android通过"记住密码"功能学习数据存储类SharedPreferences详解及实例
- Android应用中使用SharedPreferences类存储数据的方法
- android中使用SharedPreferences进行数据存储的操作方法
- SharedPreferences详解
- Android SharedPreferences
- Activity之SharedPreferences探究
- 【Android】数据共享 sharedPreferences 相关注意事项
- Android SharedPreferences理解
- Android SharedPreferences 源码分析
- andriod之SharedPreferences共享参数存储
- Android数据存储——SharedPreferences(记录应用被打开的次数)
- SharedPreferences实现Android中的数据存储
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- 使用SharedPreferences来实现记住密码和自动登陆
- Android数据存储初识
- 安卓数据存储困惑
- 可记住用户名密码的登陆界面(基于对SharedPreferences的应用)