zoukankan      html  css  js  c++  java
  • SharedPreferences

    1. SharedPreferences 与 Editor 简介
    对于应用中需要少量的数据进行存储,并且数据的格式很简单(如字符串、标量数值等)的。比如应用各种配置信息、小数据等,Android提供SharedPreferences进行保存。
     
    SharedPreferences保存的数据主要是类似配置信息格式的数据,所以它保存的数据主要是简单的“key-value对”。
     
    SharedPreferences接口主要负责读取应用程序的Preferences数据。它提供如下方法来访问SharedPreferences中的key-value对:
    1. boolean contains(String key) :判断SharedPreferences是否包含特定key的数据。
    2. Map<String,?> getAll() :获取SharedPreferences里全部的key-value对。
    3. Xxx getXxx(String key, Xxx defValue) :获取指定key对应的value,如果key不存在,则返回默认值defValue。
     
    SharedPreferences接口本身未提供写入数据的能力,而是通过其内部接口。其调用SharedPreferences.edit() 方法即可获得它所对应的 SharedPreferences.Editor对象。Editor有如下向SharedPreferences写入数据的方法:
    1. Editor.clear() :清空SharedPreferences里所有数据。
    2. Editor.putXxx(String key, Xxx Value) :向SharedPreferences里存入指定key对应的数据。
    3. Editor.remove(String key) :删除SharedPreferences里指定key对应的数据项。
    4. boolean Editor.commit() :当Editor编辑完成后,调用该方法提交修改。
     
    SharedPreferences本身是一个接口,程序无法直接创建实例,只能通过 Context提供的getSharedPreferences(String name, int mode)方法获取实例。其中mode有如下值:
    Context.MODE_PRIVATE :指定该SharedPreferences数据只能被本应用读、写。
    Context.MODE_WORLD_READABLE :指定该SharedPreferences数据也能被其他应用程序读,但不能写。
    Context.MODE_WORLD_WRITEABLE :指定该SharedPreferences数据也能被其他应用程序读、写。
     
     
     
    2. SharedPreferences的存储位置和格式
    SharedPreferences数据总是保存在: /data /data /<package_name> /shared_prefs 目录下,以XML格式保存,根元素为:<map />。
    <map>
    <int name="key" value="value" />
    <string name="key" > value </string>
    </map>
     
     
     
    3. SharedPreferences的使用
    SharedPreferences preferences = getSharedPreferces("name", MODE_PRIVATE);
    SharedPreferences.Editor editor = preferences.edit();
    //写入数据
    editor.putXxx("name1",value1);
    .............................
    editor.commit();
    //读取数据
    Xxx name2 = preferences.getXxx("name1",defValue);


     
     
    4. 读写其他应用的SharedPreferences
    1.创建其他应用的对应 Context。
    Context useContext = createPackageContext("package_name", Context.CONTEXT_IGNORE_SECURITY);
    2.调用其他应用的 Context的 getSharedPreferences()方法获取 SharedPreferences对象。
    3.调用其他应用的 SharedPreferences.edit() 方法获得相应的 SharedPreferences.Editor对象。
     
  • 相关阅读:
    tcp连接建立和断开
    端口状态说明 LISTENING、ESTABLISHED、TIME_WAIT及CLOSE_WAIT
    window IIS6/IIS7取消脚本执行权限,禁止运行脚本木马
    java 各种架构图汇总
    .NET平台常见技术框架整理汇总
    SQL Server中的Merge Into
    iText从LGPL改成AGPL历史来龙去脉
    工具系列 | 分布式日志管理graylog 实战
    目前博客使用的主题模板
    RLChina 文章
  • 原文地址:https://www.cnblogs.com/csonezp/p/2781068.html
Copyright © 2011-2022 走看看