首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

SharedPreferences读写引见

2012-09-06 
SharedPreferences读写介绍在Android中有四种基本的数据保存方法,一是SharedPreference,二是文件,三是SQLi

SharedPreferences读写介绍

在Android中有四种基本的数据保存方法,一是SharedPreference,二是文件,三是SQLite,四是ContentProvider。SharedPreferences作为操作简单最简单的一种方式,被广泛用于保存应用的配置信息,这里介绍下SharedPreferences


SharedPreferences是以键值对来存储应用程序的配置信息的一种方式,它只能存储基本数据类型。一个程序的配置文件仅可以在本应用程序中使用,或者说只能在同一个包内使用,不能在不同的包之间使用。 实际上SharedPreferences是采用了XML格式将数据存储到设备中,在DDMS中的File Explorer中的/data/data/<package name>/shares_prefs下。


向SharedPreferences中写入数据

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);SharedPreferences.Editor editor = settings.edit();editor.putBoolean("silentMode", mSilentMode);editor.commit(); //一定要记得提交

?

从SharedPreferences中读取数据

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);//或者使用 SharedPreferences settings = getPreferences(0);boolean silent = settings.getBoolean("silentMode", false);

?

函数介绍:

1、android.content.Context.getSharedPreferences (String name, int mode)

返回preferences file 'name'的内容。对于一个name只有一个SharedPreferences,所以任何修改可以理解生效。name为preferences file名mode默认为0(MODE_PRIVATE)表示preferences file为应用私有,只有此应用可以访问MODE_WORLD_READABLE表示所有其他程序有读权限MODE_WORLD_WRITEABLE表示所有其他程序有写权限
2、android.app.Activity.getPreferences (int mode)返回当前activity私有的SharedPreferences。相当于上面的getSharedPreferences(String, int) 方法name传入参数为当前activity的类名

?

?

3、android.preference.Preference.getSharedPreferences()

返回当前Preference可以访问的SharedPreferences

?

下篇文章介绍对于SharedPreferences如何在不同的activity中访问,以及如何直接访问任何可以访问的SharedPreferences。比如对于上面方法3存储的SharedPreferences如何在Activity中进行访问

?

参考:

http://www.cnblogs.com/jerrychoi/archive/2010/04/14/1712151.html

http://www.eoeandroid.com/sdk/api/reference/android/preference/Preference.html#getSharedPreferences()

http://www.eoeandroid.com/sdk/api/reference/android/content/Context.html#getSharedPreferences(java.lang.String, int)

http://www.eoeandroid.com/sdk/api/reference/android/app/Activity.html#getPreferences(int)

?

热点排行