我想知道为什么活动之间的对象交换是Parcelable,为什么不作为JSON字符串。我知道Parcelable比Serialization更好。任何人都可以在Parcelable和JSON之间进行比较。
答案 0 :(得分:2)
我想知道为什么活动之间的对象交换是Parcelable,为什么不作为JSON字符串
并非a Parcel
中的所有内容都可以包含在JSON字符串中,例如:
IBinder
个对象(与使用AIDL的远程服务相关联)ParcelFileDescriptor
Exception
此外,虽然您可以将byte[]
转换为String
(例如,base-64编码),但这样效率会很低。
答案 1 :(得分:1)
Parcelable是非常低的水平。因此,它比Android上现有的其他所有内容(如Serializeable)快得多。 Json对于性能(在编写和阅读json时考虑性能问题)和内存空间没有任何意义。