我需要将一个对象内容存储在Sqlite中。我想知道使用对象序列化还是Parcelable进行存储哪种方式最好。
是否可以将其存储为Parcelable?如何操作?
我需要将一个对象内容存储在Sqlite中。我想知道使用对象序列化还是Parcelable进行存储哪种方式最好。
是否可以将其存储为Parcelable?如何操作?
欢迎您将对象转换为某种可持久化的数据结构(XML、JSON、Serializable
),并将其存储在某个数据库列中。请注意,您仍然需要处理兼容性问题(例如,应用程序的版本2更改了一个类,现在需要处理版本1和版本2的结构)。请记住,这样做会丧失许多数据库功能(例如,在对象中查询某些内容)。
您也可以尝试使用对象数据库、CouchDb或将可持久化的数据结构存储到文件中,如果SQLite不是必需的。
绝对不可靠的方法是将 Parcelable
转换为 Parcel
并尝试存储 Parcel
。 Parcel
仅用于IPC,而不是设计用于持久化。这也是为什么 Parcelable
比 Serializable
更快的原因之一。
Serializable
。而Parcelable
则用于进程间通信,它是一种二进制格式,不建议用于持久化。