Android中Parcelable为什么不适合序列化到本地文件
2021-01-18 本文已影响0人
笔记本65
首先,Parcelable是支持序列化到本地的,可以搜下Parcel.marshall方法。
Serializable是通用的序列化机制的,将数据存储在磁盘,可以做到有限持久化保存,文件的生命周期不受程序影响,Parcelable的序列化操作完全由底层实现,不同版本的Android实现方式可能不相同,所以不能进行持久化存储。
参考:Parcel.html
Parcel is not a general-purpose serialization mechanism. This class (and the corresponding Parcelable API for placing arbitrary objects into a Parcel) is designed as a high-performance IPC transport. As such, it is not appropriate to place any Parcel data in to persistent storage: changes in the underlying implementation of any of the data in the Parcel can render older data unreadable.