Android学习-SharedPreferences接口的学习
来源:互联网 发布:js获取数组前几个元素 编辑:程序博客网 时间:2024/06/13 23:46
在android中SharedPreferences作为轻量级数据数据是非常方便的,把一个应用程序或是一个Activity的数据存放在SharedPreferences文件中,以便下次进入程序的时候读取出来,呈现给用户或者用作其他的处理。另外,SharedPreferences也可以保存控件的状态,并且为保存的状态改变而指定监听事件,在android系统设置中就大量地用了这种方式。好了,现在来简介一下SharedPreferences的用法;
首先,SharedPreferences是android.content包下的一个接口,该接口中包含了两个子接口一个是Editor,另外一个是OnSharedPreferenceChangeListener。看到名字,就知道这两个接口的含义,Editor接口主要是负责将数据从Preference文件中存储和读取的,而OnSharedPreferenceChangeListener接口是负责监听Preference文件存储状态是否改变,如果改变了可以在自己定义响应的操作。
怎样在程序中获取SharedPreferences的对象呢?从SDK上可以得知,用Context.getSharedPreferences(String,int)可以获取其对象,这里String类型代表的参数是存储文件的名字,而int型参数代表的含义是读写这个存储文件的权限。名字没什么好说的,就是一字符串。而权限的话,有以下几种:
Context.MODE_APPEND;值为32768;该模式会检查文件是否存在,存在就追加内容,不存在就创建文件,并且写入数据。
Context.MODE_PRIVATE;值为0;默认模式,私有,只能被本应用访问。
Context.MODE_WORLD_READABLE;值为1;其他应用可读。
Context.MODE_WORLD_WRITEABLE;值为 2;其他应用可写。
如果想其他应用也能访问该文件并且可以读写的话,可以指定为Context.MODE_WORLD_READABLE+ Context.MODE_WORLD_WRITEABLE的模式
第一:获取本应用的preferences文件
SharedPreferences pre =this.getSharedPreferences("FileName", Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE);
pre.edit().putString("Name","张三").commit();
Log.v("yourActivity","Name = " + pre.getString("Name", "nothing") );
第二:获取其他应用的preferences文件
要想获取其他程序的preferences文件,首先要获取它的上下文context对象,比如要去访问包名为dxd.android.test的apk的preferences文件,可以这样来的到它context;
Context otherContext = createPackageContext(“dxd.android.test”,Context.CONTEXT_IGNORE_SECURITY);
只要得到了这个context,接下来的事情就跟在同一个包中一样了。
- Android学习-SharedPreferences接口的学习
- Android SharedPreferences 学习总结
- Android学习:SharedPreferences用法
- SharedPreferences---Android学习笔记
- Android学习之SharedPreferences
- Android学习笔记-SharedPreferences
- Android学习笔记-SharedPreferences
- 【android学习】SharedPreferences详解
- android学习---SharedPreferences存储
- Android学习-SharedPreferences
- android学习日记:SharedPreferences的使用
- Android学习笔记<20140112> SharedPreferences的使用
- Android学习笔记--SharedPreferences的使用
- Android开发学习笔记-SharedPreferences的用法
- Android基础学习之SharedPreferences的使用
- Android学习笔记(SharedPreferences的使用)
- Android学习笔记2--SharedPreferences的使用
- SharedPreferences的学习
- 【小编教你如何解析Windows XP注册表的常用设置技巧】
- 图像跨距的概念
- redhat linux64 yum和g++安装
- SQL DEVELOPER 里 SYSTEM不能以SYSDBA登录的问题
- Selenium2.0之WebDriver学习总结(1)
- Android学习-SharedPreferences接口的学习
- Maven配置备忘
- django中使用ckeditor 直接显示html代码的问题
- 工作5年的我,突然之间迷茫了。
- 连载:现代无线电接收机的系统噪声系数分析一 级联接收机的计
- sax解析xml文件出现编码错误问题Invalid byte 1 of 1-byte UTF-8 sequence.
- jdbc连接池
- C#多线程环境下调用 HttpWebRequest 并发连接限制
- Storm使用到的相关技术总结