android中SharedPreferences
SharedPreferences:用于存储少量并且数据格式简单,基本上都是普通的字符串,标量类型的值,比如:应用程序的各种配置信息等。
SharedPreferences:保存的数据格式主要是key-value对
主要方法:
boolean contains(String key):判断是否包含特定key的数据
Map<String, ?> getAll():获取全部的数据
Xxx getXxx(String key, boolean defValue):获取指定key的值,如果不存在则返回defValue
SharedPreferences本身没有编辑功能,通过调用内部的接口可以实现编辑。调用edit()方法返回Editor对象,Editor提供了如下方法向SharedPreferences写入数据:
clear():清空数据
putXxx(String key, Xxx value):放入数据
remove(String key):删除数据
commit():当Editor编辑完成后,调用该方法提交修改
SharedPreferences本身是一个接口,程序无法创建SharedPreferences的实例,只能通过Context提供的SharedPreferences getSharedPreferences(String name, int mode)方法获取SharedPreferences实例:
第一个参数是文件的名称,不能带有后缀
第二个参数的含义:
Context.MODE_PRIVATE:只能被本应用读写
Context.MODE_WORLD_READABLE:能被其他的应用读,但是不能写
Context.MODE_WORLD_WRITEABLE:可以被其他的应用读和写
SharedPreferences本质是以XML格式的文档存数数据的。
SharedPreferences数据的存储总是保存在/data/data/<package_name>/shared_prefs目录下。
写入数据:
btn = (Button) findViewById(R.id.btn);
preferences = this.getSharedPreferences("hml", this.MODE_PRIVATE);
editor = preferences.edit();
editor.putString("test", "test");
editor.commit();
访问其他应用程序SharedPreferences中的数据
前提是其他应用程序创建SharedPreferences时指定的MODE是Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE
步骤:
1、创建其他应用程序的Context对象:Context createPackageContext(String packageName, int flags)
packageName:是其他应用程序的包名,在android中包名唯一标示一个应用程序
2、调用Context的getSharedPreferences(String name, int mode)获取SharedPreferences对象
3、其他操作和操作自己的SharedPreferences一样
最新文章
- .NET Core采用的全新配置系统[9]: 为什么针对XML的支持不够好?如何改进?
- 测试--easymock的使用
- ODP方式,大批量数据写入ORACLE数据库
- Unity3D中的线性插值Lerp()函数解析
- mac下XAMPP服务器配置多站点配置局域网配置 (转)
- 编写一个Java程序,计算一下1,2,…,9这9个数字可以组成多少个互不相同的、无重复数字的三位偶数。
- Mysql复制表格
- iOS耳机操作
- 为什么要关闭360云盘:新来的美工嫌我们logo太丑,所以就决定关闭了。这个理由怎么样
- Java线程面试题 Top 50(转载)
- sql 数据库备份还原脚本
- Eclipse使用git 上传代码至github
- 1.3 ODPS
- 十条很实用的jQuery代码片段
- iOS抓包工具Charles
- Redis的消息发布和订阅
- [BZOJ1977][BeiJing2010组队]次小生成树
- oracle_18c新建用户用normal登陆失败
- 带你入门 Docker
- BIO | NIO | AIO (Java版)