如何在Android

时间:2016-03-02 15:57:30

标签: android android-asynctask

假设我有一个活动想要向服务器发送网络请求(例如Http请求)。我该如何实施呢?

我可以

  1. 从“活动”中,创建一个AsyncTask。
  2. 向AsyncTask内的服务器发送Http请求消息。
  3. 等待来自AsyncTask内服务器的确认响应消息。
  4. 但是,有可能删除消息并且AsyncTask继续运行而不会收到响应消息,从而泄漏内存。

    我也可以

    1. 从活动中启动工作线程。
    2. 在工作线程内发送请求。
    3. 等待工作线程内的确认响应。
    4. 如果超时未收到回复,请重新发送请求消息。
    5. 然而,用户可能会退出"活动(通过接听电话,按主页按钮等)。那我怎么处理这种情况呢?如果响应消息到达但活动不在onResume状态会发生什么?我是否只是删除请求并在再次创建活动时重新发送新请求?

      我确信这是一个常见的用例,但我无法找到很多关于如何实现可行方法的讨论,以便处理Activity生命周期中的不同可能情况。请指出我正确的方向。谢谢。

0 个答案:

没有答案