gpt4 book ai didi

android - parcelable 值得实现以在 Activity 之间传递数据吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:16:44 33 4
gpt4 key购买 nike

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

我找到了这个线程:Benefit of using Parcelable instead of serializing object

有人从一本书中说,parcelable 仅用于进程间通信?那可能不是最新的,对吧?因为至少从技术上讲,这是可能的。

然后还有 parcelable 不可靠的说法,因为实现因设备而异,这当然是一个致命的特性,因为我希望它始终工作,所有设备和 api,从 API 7 开始。

而且我还阅读了一些关于使用 Externalizable 或实现自定义协议(protocol)的建议……但我不明白,为什么 Parcelable 不可靠,为什么 Android 开发人员会围绕某些无法在所有设备上运行的东西进行讨论?还是评论不正确?

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

请不要告诉我“试一试”,我没时间做这个,专门检查Parcelable是否可靠(而且设备不够)...求经验...

谢谢。

附言也不要对我说“Serializable 在大多数情况下是可以接受的”我知道,它确实可以接受,但我有时间并且想将它与 Parcelable(或其他东西)一起使用,如果这可以改善用户体验的话。

最佳答案

Parcelable 始终在所有设备上工作。否则,什么 都不起作用。 Android 内部非常依赖于 Parcelable

Parcelable 会比 Serializable 更高效一些,但我严重怀疑它会对您的“用户体验”产生很大影响(当然,除非您是到处使用它并序列化非常大和复杂的对象)。

如果您认为自己遇到了性能问题,那么我会花时间分析应用程序并收集关于它在哪里花费时间的经验数据。恕我直言,将 Serializable 替换为 Parcelable 是一种相对较低级别的实现优化,可能会给您带来接近于零的可感知性能改进。

关于android - parcelable 值得实现以在 Activity 之间传递数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11994001/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com