活动被破坏时进行改造

时间:2015-07-29 06:03:56

标签: android rest retrofit

我看到有关改造(从android执行restapi)的不同示例,他们在这里编写代码/将回调放入活动中,如下面的链接所示: 我想知道这是否是正确的方法?我读到,如果活动因电话呼叫而被破坏,可能会触发问题。 如果这是正确的,我会理解为什么破坏活动不会影响申请?

谢谢, 奇

2 个答案:

答案 0 :(得分:0)

Why the destruction of the activity does not influence application ?

您可能知道Android不允许在主线程上进行网络交互。它会抛出一个NetworkOnMainThreadException。建议在后台或工作线程中进行所有网络处理。 Retrofit库足以支持这一点。改造使异步后台请求。

答案 1 :(得分:0)

我会将所有http调用从Activity / Fragment分离到后台服务,后者不受屏幕旋转和其他运行时更改的影响。

因此,您可以将Retrofit作业移至Service,并在接收数据后,您可以使用Event Bus将它们再次传回您的Activity / Fragment。

您可以使用以下库之一来执行此操作

  1. EventBus
  2. Otto