SharedPreferences的使用

SharedPreferences简介

SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。
SharedPreferences提供了java常规的Long、Int、String等类型数据的保存接口。 
SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问。
SharedPreferences最终是以xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml处理时Dalvik会通过自带底层的本地XML Parser解析,比如XMLpull方式,这样对于内存资源占用比较好。

SharedPreferences使用步骤

写入

//通过上下文获取一个SharedPreferences对象
SharedPreferences sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
//获得SharedPreferences编辑器
Editor edt = sp.edit();
//写入数据
edt.putString("name",strUsername);
edt.putString("psword",strUserpsword);
//提交(执行完这句才会真正保存到xml)
edt.commit();

读取

SharedPreferences sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
//sp直接获取数据
String strName = sp.getString("name", "");
String strPsword = sp.getString("psword", "");

补充

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:表示当前文件可以被其他应用写入


你可能感兴趣的:(SharedPreferences的使用)