Shared Preferences(二)

关于SharedPreferences小博带大家再来总结一下:SharedPreferences 是Android 中的内置API,允许我们存取基础类型数据,像:boolean,float ,int , long , string 。因为这些数据可以持久化的存在,即便在你的应用程序结束之后(注意:如果应用从手机上卸载掉后,该程序对应的SharedPreferences将会消失,保存在路径:/data/data//shared_prefs 目录下) 注意:User Preferences 用户配置 严格来说,SharedPreferences最好不要用来保存“用户配置”,比如,用户选择了什么铃声,是否自动更新等等。如果要为应用创建用户配置,可以使用PreferenceActivity,它可以用来创建“用户配置”。(PreferenceActivity用来创建程序中的设置界面) 如何在应用程序中获取SharedPreferences呢?

getSharedPreferences(name , mode) - 如果你的应用需要多个preferences文件可以使用该方法。该方法的第一个参数,用来区别不同的preferences文件。 比如: SharedPreferences sp1 = getSharedPreferences("sp_1" , Context.MODE_PRIVATE); SharedPreferences sp2 = getSharedPreferences("sp_2" , Context.MODE_PRIVATE); 是同一个应用程序的两个不同的配置文件。

该方法的第二个参数支持如下几种值:Context.MODE_PRIVATE:指定该SharedPreferences数据只能被本应用程序或者是拥有相同user ID的应用读、写。 Context.MODE_WORLD_READABLE :指定该SharedPreferences数据能被其它应用程序读,但不能写。 Context.MODE_WORLD_WRITEABLE:指定该SharedPreferences数据能被其它应用程序读,但不能写。这两个变量在API17以后已经不建议使用了。创建全局可读文件是非常危险的事,这样会引起程序的安全漏洞。程序之间的交互应该更多的使用正规的途径,比如:ContentProvider, BroadcastReceiver, and Service。当程序通过备份和恢复后,并不能保证这种获取方式依然对该文件有效。文件创建模式:允许所有的其它程序来读取创建的文件。

Context.MODE_MULTI_PROCESS 在API11中添加,SharedPreferences加载标记:被设置后,在硬盘上的文件在被修改是将会被检查如果当前的SharedPreferences实例已经被加载进进程后。这种情况通常发生在,当程序有多个进程在修改同一个SharedPreferences文件的时候。通常来说这种方式在进程之间交互表现是非常好的。 在API 2.3之前,发布release版本时,这个标记是默认存在的,当发布release版本时。对于使用2.3以上的sdk进行编译的时候,如果想使用那么 必须明确的设置。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,940评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,258评论 19 139
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,934评论 0 17
  • permissionn.允许;批准,正式认可,认可user permission 使用权限permission D...
    lengol阅读 4,659评论 0 51
  • 【今日检视 】 PQ 饮食、健康、事业经营发展 早餐糙米粥、胡萝卜、卤味;午餐面包、苹果;晚餐饺子。 瑜伽飞燕式2...
    特舒阅读 1,243评论 0 0

友情链接更多精彩内容