是否可以实现在活动之间传递数据?

Ixx*_*Ixx 5 performance serialization android parcelable

我想提高我的应用程序的性能.我想到的一件事是用parcelable替换所有可序列化的intent-bundle参数.

我找到了这个主题:使用Parcelable而不是序列化对象的好处

有人从一本书中指出,parcelable只是用于进程间通信吗?这可能不是最新的了,对吧?因为从技术上讲,它至少是可能的.

然后还有一个声明,即parcelable不可靠,因为实现因设备而异,这当然是一种杀戮特性,因为我希望它始终工作,所有设备和apis,从API 7开始.

我还阅读了一些关于使用Externalizable或实现自定义协议的建议......但我不明白,为什么Parcelable不可靠,为什么Android开发人员会对所有设备无法解决的问题进行嗡嗡声?或者评论不正确?

是否值得实施Parcelable?我坚持使用Serializable吗?或者是自定义序列化/ Externalizable正确的方法?

请不要告诉我"只是尝试",我没有时间,特别是检查Parcelable是否可靠(也没有足够的设备)...经验被问到...

谢谢.

PS也不要说我"Serializable对于大多数情况都是可以接受的"我知道,它确实可以接受但是我有时间并且想要将它与Parcelable(或其他东西)一起使用,如果这改善了用户体验.

Dav*_*ser 5

Parcelable在所有设备上始终始终如一地工作.如果没有,那就什么都行不通了.Android内部人员非常依赖Parcelable.

Parcelable会比Serializable我的效率更高一点,但我非常怀疑它会对你的"用户体验"产生太大的影响(当然,除非你在整个地方使用它并序列化非常庞大和复杂的对象).

如果您认为自己遇到了性能问题,那么我会花时间分析应用程序并收集有关花费时间的经验数据.恕我直言,替换SerializableParcelable是一个比较低层次的实现优化很可能给你接近零感知的性能提升.