等待服务器任务完成

时间:2014-06-19 06:38:03

标签: android android-asynctask

我有一种情况,我必须从Android进行服务器调用并根据调用的结果(结果将为true或false)我想在代码流中继续前进并弹出基于此的Dialog结果。直到调用完成我不希望在代码流或逻辑中继续前进。简而言之,我想进行同步操作

在服务器端,我将收到来自android客户端的HTTP Post请求,并根据POST中的参数,我通过从DB获取值并返回true或false返回到android客户端进行一些处理。

为了在Android端正确执行此操作,我研究并获得了两个选项。

  1. 在我的情况下使用Handler和AsyncTask不起作用,因为如果 我使用AslerTask和Handler,任务结果将到达 将来某个时候在Handler中,调用函数将返回 我希望调用函数立即调用 AsyncTask完成,即等到服务器在我之前返回 继续前进。
  2. 我遇到的另一个选择是使用 的AsyncTask get()方法。因为我没有进行长时间的运行 这个任务,而不是在服务器端执行简单的计算 即使我阻止了UI线程,也可能不会导致ANR情况。

    还有更好的选择吗?这里的AsyncTask get()实际上是get()的正确用法之一吗?

0 个答案:

没有答案