zoukankan      html  css  js  c++  java
  • 使用SharedPreference和对象流存储对象

    编写PreferencesUtils工具类可以简单对象(可以缓存对象中所有public的简单属性)

     
    另外研究了Preference存储与直接采用对象文件缓存方式的区别
    第一次写文件时
    1、效率,直接缓存对象文件比Preference快
    2、大小,直接缓存对象文件比Preference文件小
    3、缓存目录不同,Preference缓存在shared_prefs下,对象文件则根据我们的设置可以选择目录
    在设置中有两个操作
    清除缓存:会将data/应用程序/caches目录下的文件删除
    清除数据:会将除lib目录下的所有文件删除,包括shared_prefs
     
    意味着,如果我们缓存对象文件时选择的目录不是caches下,采用files或其它目录,其与preference这仅有的劣势也消失了
     
    为什么Preference操作比对象流慢,文件大。本质上都是读写文件操作,但是Preference采用的是xml形式存储,这就意味着有多余的节点和多余的转换。
     
    第二次加载的时候由于SharedPreferencesImpl 在ContextImpl中采取了Map对SharedPreferenceImpl进行缓存,所以它会表现得非常快。
     
    接下来要讨论的就是SharedPreference的存储原理,看看其缓存机制是否适合经常更改的内容的对象。
     
    源码下载地址:https://github.com/AltasT/PreferenceVObjectFile
    https://github.com/AltasT/PreferenceVObjectFile/archive/master.zip
     
    https://github.com/AltasT/PreferenceVObjectFile
    http://blog.csdn.net/wxyyxc1992/article/details/17222841
  • 相关阅读:
    UVA 10828
    素数推断算法(高效率)
    POJ1611 The Suspects (并查集)
    Android AES加密算法及事实上现
    C语言中的内存对齐
    OpenCV——老照片效果
    uuid 学习
    OpenCV——PS 滤镜, 浮雕效果
    加密算法之BLOWFISH算法
    OpenCV——照亮边缘
  • 原文地址:https://www.cnblogs.com/anee/p/3997258.html
Copyright © 2011-2022 走看看