为什么不能将Parcelable持久保存到磁盘?

tre*_*r-e 5 android parcelable

据我所知,制作一个Parcelable对象可以将它转换为紧凑的二进制格式,使其成为IPC的理想选择.我的问题是为什么不推荐这种二进制格式用于持久性.在文档中反对它的论点是二进制格式可能会改变并导致问题,这显然是有道理的,但对其他事情也不是这样吗?例如,通过序列化,您仍然可以通过更改它来破坏对象(我相信),对于数据库,您需要手动处理迁移.

从理论上讲,如果用户知道一个对象永远不会改变,那么坚持使用Parcelable二进制格式可以吗?在许多情况下,与现有解决方案(例如使用GSON持久化对象String或使用序列化本身)相比,这将非常有用且快速.

话虽如此,我有什么遗漏吗?是否存在所有Parcel内部隐藏的原因,并且没有:

public byte[] Parcel.toByteFormat(Parcelable object)
public Parcelable Parcel.fromByteFormat(byte[] parcel, Class objectClass) throws InvalidParcelFormatException
Run Code Online (Sandbox Code Playgroud)

存在?