Android学习-SharedPreferences接口的学习

在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,接下来的事情就跟在同一个包中一样了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值