zoukankan      html  css  js  c++  java
  • 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一样

  • 相关阅读:
    Mysql中自增字段(AUTO_INCREMENT)的一些常识
    MyBatis动态传入表名
    Linux创建连接命令 ln -s创建软连接
    leaflet 使用turfjs实现前端自定义插值
    java后台@RequestBody和@RequestParam
    在jeecg-boot中密码的使用
    在jeecg-boot中使用代码生成器&mybatis-plus
    Pyppeteer 爬取实战
    【转】GitHub不再支持密码验证解决方案
    【转】pyppeteer+chromium手动安装Mac版本
  • 原文地址:https://www.cnblogs.com/heml/p/3567317.html
Copyright © 2011-2022 走看看