gpt4 book ai didi

android - 在 Activity 之间传递 id 或整个对象?

转载 作者:行者123 更新时间:2023-11-30 02:34:36 26 4
gpt4 key购买 nike

我有一个包含 ListFragment 的 Activity 。它由一个 Restful 网络服务填充。当我点击列表中的一个项目时,我将该项目的 ID 发送回我的 Activity 。并使用 Intent 将其传递给第二个详细信息 Activity ,并再次通过 id 从 web 服务请求对象。

我正在考虑是否应该将对象(而不仅仅是它的 ID)发送到详细信息 Activity ?这将节省我的 http 请求并使事情变得不那么复杂。

然而,这也意味着我需要拥有整个对象,而在未来可能并非如此……该怎么办?

最佳答案

只传递 ID,原因如下:

  • 使用 Parcable 时传递对象很慢或很复杂
  • 当直接传递对象时,您有高度耦合的服务( Activity ),这是一种不好的做法,处理 Activity 就好像它们在自己的进程中一样(这在某些情况下实际上会发生,例如从另一个应用程序调用 Activity )
  • 您的对象可能已经过时(例如,用户浏览列表几分钟然后打开一个项目)

你有一个额外的 http 请求的问题应该通过良好的后端设计来缓解,这意味着你应该实现 http 缓存功能(例如 etagslast-modified 缓存控制 header 等)。这将为您带来优势,即您始终可以从服务器获得最新数据,但仅在需要时使用。这应该透明地发生,以免使您的逻辑复杂化(例如查看 Volley),如果您不能使用 http 缓存 header 并且行为在您的 http 客户端前面有一个本地缓存工作。

关于android - 在 Activity 之间传递 id 或整个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26780486/

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