Android数据存储访问——SharedPreferences简单存储涉及到需要为一些显示设置一个配置文件 在网上看了些资料
Android数据存储访问——SharedPreferences简单存储
涉及到需要为一些显示设置一个配置文件 在网上看了些资料 看了下书 SharedPreferences类似于一个.ini文件 可以完成相应的功能 对此进行了整理 主要参考了某PPT
?
Android数据存储和访问方式SharedPreferences File SQLite?ContentProvider
?
SharedPreferences是一种轻量级的数据保存方式?采用键值对NVP保存在文件系统中
可用于保存数据以及实现不同应用程序间的数据共享
支持3种访问模式
●MODE_PRIVATE 私有
●MODE_WORLD_READABLE 全局读
●MODE_WORLD_WRITEABLE?全局写
定义访问模式:
?
或是含2种方式定义SharedPreferences名称,与Android系统中保存的文件同名?
为了可以使用,需要将访问模式和名称作为参数残敌,获取到SharedPreferences对象通过SharedPreferences.Edior类对SharedPreferences修改,最后调用Commit()函数保存修改内容通过调用getSaredPerences()函数,并在第一个参数中指明访问的名称,通过get<Type>()方法获取保存着的键值对其中第一个参数为NVP的名称,第二个参数为无法获取时的缺省值?
Android为每个应用程序建立与包同名的目录,保存该程序产生的数据,文件等
SharedPreferences文件保存在/data/data/<packagename>/shared_prefs目录下
SaveSetting被保存为一个xml文件
?
补充Linux:
文件权限描述创建者,同组用户,其他用户对文件的操作限制(-rw-rw---之类)
x?可执行?r?可读?w?可写?d?目录?-?普通文件?权限与之前设置的MODE有关
?
?
访问其他应用程序的SharedPreferences需要的3个条件:
●访问模式为全局读或全局写
●需要知道共享者的包名和SharedPreferences名称,通过Context获取对象
●需要知道每个数据的名称和数据类型以读取数据
?
Context c=nulltry{c=this.createPackageContext(PREFERENCE_PACKAGE,Context.CONTXT_IGNORE_SECURITY);}catch(NameNotFoundException e){e.printStackTrace();}SharedPreferences sharedPreferences=c.getSharedPreferences(PREFERENCE_NAME,MODE);???
