我认为parcel和serializable可以互换使用,或者至少在同一个环境中不直观。你能为我澄清一些事情吗?
是parcel的持久存储(在磁盘上)或仅存储在内存中
我是否需要序列化才能将宗地数据存储到磁盘
谢谢你的洞察力,不,android dev手册并没有让我明白
答案 0 :(得分:3)
我的回答:
Parcel用于展平对象,因此它们可以存储在JVM运行内存以外的其他位置。
您无需将serializable与parcel混合以将数据存储到磁盘。只有一个或另一个足以将对象存储到磁盘。
Serializable和Parcelable是展平Java对象的两种方法。
这些展平的对象可以通过各种传输格式在进程之间传递 - 包括磁盘文件。
Serializable来自核心Java,易于使用。
Parcelable来自Android,有点复杂。
这个答案包含更多细节:
https://stackoverflow.com/a/5551155/523135
此博文的示例代码为Parcelable:
http://blog.cluepusher.dk/2009/10/28/writing-parcelable-classes-for-android/
此博客文章包含可序列化代码示例: