欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android SharedPreferences mode 的模式说明 博客分类: Android androidjava手机开发

程序员文章站 2024-03-13 21:28:52
...

SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中 重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长 整形、Int整形、String字符串型的保存,它是什么样的处理方式呢?

  SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问,android123提示最 终是以xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml 处理时Dalvik会通过自带底层的本地XML Parser解析,比如XMLpull方式,这样对于内存资源占用比较好。

 

通过SharedPreferences的方法是通过Context的getSharedPreferences(String name,int mode);


其中mode的值有:
Context.MODE_PRIVATE
  只能被本应用程序读写

 
Context.MODE_WORLD_READBALE
   能被其他程序读取、但是不能写


Context.MODE_WORLD_WRITEABLE
       能被其他程序读、写

 

 

API:

public abstract SharedPreferences   getSharedPreferences  (String  name, int mode)

Since: API Level 1

Retrieve and hold the contents of the preferences file 'name', returning a SharedPreferences through which you can retrieve and modify its values. Only one instance of the SharedPreferences object is returned to any callers for the same name, meaning they will see each other's edits as soon as they are made.

Parameters
name mode
Desired preferences file. If a preferences file by this name does not exist, it will be created when you retrieve an editor (SharedPreferences.edit()) and then commit changes (Editor.commit()).
Operating mode. Use 0 or MODE_PRIVATE  for the default operation, MODE_WORLD_READABLE  and MODE_WORLD_WRITEABLE  to control permissions. The bitMODE_MULTI_PROCESS  can also be used if multiple processes are mutating the same SharedPreferences file. MODE_MULTI_PROCESS  is always on in apps targetting Gingerbread (Android 2.3) and below, and off by default in later versions.
Returns
  • Returns the single SharedPreferences instance that can be used to retrieve and modify the preference values.
See Also
一般默认使用MODE_PRIVATE, 想在一态和二态之间进行传递参数的时候可以考虑使用 MODE_WORLD_READABLE  | MODE_WORLD_WRITEABLE