Android 使用Parcel将数据保存在缓存中是否可以接受?

Android 使用Parcel将数据保存在缓存中是否可以接受?,android,caching,parcel,Android,Caching,Parcel,形势 我的包裹用途是保存以下内容: 可以随时从网络中提取的列表数据(更具体地说,是twitter时间线) 列表的滚动位置 UI元素的状态,例如抽屉是否打开 示例 类A包含以下内容:ID、名称、描述、时间、位置和位图 ArrayList L包含多个始终与internet同步的实例 出于性能原因,我希望将L存储在本地,作为来自internet的数据副本存储在缓存中,并以包的形式存储 问题 使用Parcel合并数据并保存在缓存中是否可以接受?由于包裹可以随时作废,而且也是缓存,我认为这样做很好,但我想

形势

我的包裹用途是保存以下内容:

  • 可以随时从网络中提取的列表数据(更具体地说,是twitter时间线)
  • 列表的滚动位置
  • UI元素的状态,例如抽屉是否打开
  • 示例

    类A包含以下内容:ID、名称、描述、时间、位置和位图

    ArrayList L包含多个始终与internet同步的实例

    出于性能原因,我希望将L存储在本地,作为来自internet的数据副本存储在缓存中,并以包的形式存储

    问题

    使用Parcel合并数据并保存在缓存中是否可以接受?由于包裹可以随时作废,而且也是缓存,我认为这样做很好,但我想确定一下

    使用Parcel合并数据并保存在缓存中是否可以接受

    我不会的。你在浪费CPU时间,没有明显的附加值

    因为缓存中的数据可以随时被释放


    正确,如果“缓存可以被释放”,您的意思是“作为单例实现的缓存可能会因为进程终止而消失”。无论您是在缓存
    地块
    阵列列表
    ,还是
    餐厅
    ,都是如此。因此,请保持数据的自然形式,即不太可能是
    包裹

    a
    包裹
    与缓存无关,就像
    编辑文本
    餐厅
    与缓存相关一样。您可能希望编辑您的问题,更详细地解释“使用包裹代替缓存”的含义。@commonware示例可以吗?“示例可以吗?”--不,因为这并不能解决我评论中的任何问题。@Commonware可能我的措辞是错误的-我想说的是,我想使用Parcel合并数据并保存到缓存,因为缓存中的数据可以随时处理。我正在考虑应用程序由用户进入后台,由系统终止,然后由用户再次打开的情况。我必须合并才能保存到存储。@SorePeong:“我必须合并才能保存到存储”--这不是一个
    包裹。引用:“Parcel不是通用的序列化机制。此类(以及用于将任意对象放入Parcel的相应Parcelable API)设计为高性能IPC传输。因此,不适合将任何包裹数据放入永久性存储:包裹中任何数据的底层实现中的更改都可能导致旧数据无法读取。”