本文参考Google官方文档http://developer.android.com/training/basics/data-storage/shared-preferences.html

在Android中最简单的数据保存方式就数——SharedPreferences。

如果你想要保存一些较小的键值对集合并且是简单的数据类型的话,使用SharedPreferences无疑是最好的选择,一个SharedPreferences对象指向的文件是一个包含键值对的XML文件,并且其本身提供了一些简单的方法供我们读写。其中SharedPreferences可以设置为私有和共享的。

第一步:获取SharedPreferences对象

1、通过getSharedPreferences(String name, int mode)方法返回一个SharedPreferences对象。如果name存在,则返回指向这个文件的SharedPreferences对象。如果name不存在,则创建新的文件,返回SharedPreferences对象。MODE是指文件的权限,常用的权限类型有三个:MODE_PRIVATE(私有--只能本程序访问)、MODE_WORLD_READABLE(公开读取权限--所有程序都可以读取)、MODE_WORLD_WRITEABLE(全局写权限--所有程序都能读写)。

2、通过getPreferences(int mode)方法返回SharedPreferences对象。这个SharedPreferences对象仅仅是当前Activity拥有,默认的name为当前Activity的类名。

第二步:获取SharedPreferences.Editor接口,实现对SharedPreferences的编辑

官方推荐:SharedPreferences文件命名推荐使用包名+名称,比如:"com.example.myapp.PREFERENCE_FILE_KEY"

SharedPreferences sp = this.getSharedPreferences("mySharedPreferences", Context.MODE_PRIVATE); SharedPreferences.Editor editor = sp.edit(); editor.putString("username", username); editor.putString("password", password); editor.commit();

第三步:读取SharedPreferences文件数据

读取数据和写数据是相对应的,通过方法getXxxx()将key-value中的数据取出。

SharedPreferences sp = MainActivity.this.getSharedPreferences("mySharedPreferences", Context.MODE_PRIVATE); String username = sp.getString("username", "moocher");
如果在SharedPreferences文件中没有找到USERNAME,默认会返回moocher值。

MainActivity.xml是通过getPreferences(int mode)方法创建的SharedPreferences文件。

mySharedPreferences.xml是通过getSharedPreferences(String name, int mode)方法创建的。

更多相关文章

  1. Android(安卓)Sqlite Failed to open database(无法打开数据库文
  2. Android(安卓)主动获取电量的方法
  3. android Bitmap
  4. Android(安卓)对话框【Dialog】去除白色边框代码
  5. 浅谈Java中Collections.sort对List排序的两种方法
  6. 类和 Json对象
  7. NPM 和webpack 的基础使用
  8. Python list sort方法的具体使用
  9. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程

随机推荐

  1. 2014.01.21(2)——— android开发实例之vie
  2. mac系统连接Android手机
  3. 自定义Android,toast,以及多线程toast
  4. 解决Gradle minifyEnabled无法找到错误
  5. 在Android系统中调用系统前置摄像头
  6. Android的图片叠加
  7. Android(安卓)抓包的一些命令 及 adb使用
  8. Android下执行Runtime.getRuntime().exec
  9. Android(安卓)自动化测试―robotium(六)只
  10. Android的Adapter