安卓使用SharedPreferences类存储软件参数设置

 2 E币 
成为会员,免费下载资料
文件大小:5.75 MB 上传者:jp1017 时间:2015-08-04 20:12:56 下载量:8
        在开发软件的时候,我们需要给用户提供软件参数设置功能,例如我们常用的QQ,用户可以设置是否允许陌生人添加自己为好友。对于软件配置参数的保存,window下通常我们会采用ini文件。如果是J2EE下面,我们会采用properties属性文件或者xml进行保存。

        那么,我们在Android应用中又适合采用什么方式保存软件配置参数呢?Android平台给我们提供了一个SharedPreferences类,这是一个轻量级应用程序内部轻量级的存储方案,特别适合用于保存软件配置参数,比如boolean,int,float,long,String等数据.使用SharedPreferences类保存数据,其实质是采用了xml文件存放数据,路径为:/data/data//shared_prefs。

        获取SharedPreferences的两种方式:
        1、调用Context对象的getSharedPreferences()方法
        2、调用Activity对象的getPreferences()方法

        两种方式的区别:
        调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组件共享.
        调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用.

        SharedPreferences的四种操作模式:
        Context.MODE_PRIVATE
        Context.MODE_APPEND
        Context.MODE_WORLD_READABLE
        Context.MODE_WORLD_WRITEABLE

        Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容
        Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
        Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件.
        MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
        MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.

        下面是两种基本用法:
        1:将数据保存至SharedPreferences:
        SharedPreferences preferences=getSharedPreferences("user",Context.MODE_PRIVATE);
        SharedPreferences .Editor editor=preferences.edit();
        String name="ebaina";
        String age="100";
        editor.putString("name", name);
        editor.putString("age", age);
        editor.commit();//数据的提交

        2:从SharedPreferences获取数据:
        SharedPreferences preferences=getSharedPreferences("user", Context.MODE_PRIVATE);
        String name=preferences.getString("name", "defaultname");
        String age=preferences.getString("age", "0");

        下面这个是我看视频写的一个例子:[attach]2705[/attach]

展开
折叠
819
评论
共 0 个
内容存在敏感词
    易百纳技术社区暂无数据
相关资料
关于作者
易百纳技术社区
jp1017
贡献资料 9
易百纳技术社区 我上传的资料
登录查看
我赚取的积分
登录查看
我赚取的收益
登录查看
上传资料 赚取积分兑换E币
易百纳技术社区
删除原因
广告/SPAM
恶意灌水
违规内容
文不对题
重复发帖
置顶时间设置
结束时间
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-资料模块

审核失败

失败原因
备注
易百纳技术社区