Intent依赖于2个API调用?

时间:2014-11-07 20:01:00

标签: android android-async-http

假设我的情况是API响应用我的音乐家模型填充特定于该音乐家的信息。还有另一个API响应,给定音乐家名称,描述相关艺术家。

我想发布一个详细活动,展示音乐家的名字,成员,流派,专辑(API回应A)以及相关艺术家(API回应B)。

异步网络调用将提供更好的用户体验,但由于启动详细信息活动依赖于2个不同的api调用,是否有比API调用异步和API调用B同步更好的解决方案(阻止A和UI)?

如果我同时进行异步操作,API调用B可以在活动发生变化时运行,停止它(因为当活动发生变化时,asynctask会被销毁)。这将导致详细活动中缺少数据。

1 个答案:

答案 0 :(得分:0)

在一个简单的案例中:

  1. 开始详细活动
  2. 在向用户显示加载UX时异步执行两个请求
  3. 检索完毕后,相应地更新UI
    • 您可以在运行时随时更改Activity布局,而无需重新创建。
    • 您可以使用“响应A”立即更新UI,然后再使用“响应B”更新UI,或等待两个响应返回,然后更新UI;前者更可取。
  4. 网络操作应永远不会阻止用户界面或用户。显示加载微调器等是完全可以接受的,并且一直在谷歌自己的应用程序中使用。