Android-重复Web服务调用

Android-重复Web服务调用,android,timer,android-asynctask,alarmmanager,android-handler,Android,Timer,Android Asynctask,Alarmmanager,Android Handler,我需要经常使用JSON Web服务(最多每5,10秒一次) 我在一个AsyncTask中实现了webservice调用,该任务在我按下按钮时执行,用于测试目的 我应该使用处理器、计时器甚至AlarmManager吗 我有点困惑,因为AsyncTask创建了自己的线程,但是这些方法不会创建另一个线程,从而创建一个将创建另一个线程的线程吗 我使用AsyncTask实现它,因为每当webservice调用出现问题时,我无法让应用程序挂起,因此如果第一次调用失败,如果第二次调用成功,则不应该有任何问题,

我需要经常使用JSON Web服务(最多每5,10秒一次)

我在一个AsyncTask中实现了webservice调用,该任务在我按下按钮时执行,用于测试目的

我应该使用处理器、计时器甚至AlarmManager吗

我有点困惑,因为AsyncTask创建了自己的线程,但是这些方法不会创建另一个线程,从而创建一个将创建另一个线程的线程吗

我使用AsyncTask实现它,因为每当webservice调用出现问题时,我无法让应用程序挂起,因此如果第一次调用失败,如果第二次调用成功,则不应该有任何问题,并且我正在获取的数据将在第二次执行任务时显示

(GCM可能是一个解决方案,但现在我需要使用轮询而不是通知…)


提前感谢

我建议您使用,并在所需延迟后再次启动进程。

处理程序不创建新线程,它们发生在UI线程上。因此,您不能对其执行HTTP请求

实际上,我不会建议您的用例使用异步任务。你的请求会被打乱。此外,根据您运行的操作系统版本,它们可能并行运行,也可能不并行运行


我给你的建议是用一根线。它们存在于Android中,如果你想在活动处于前台时持续运行某些东西,它们是首选的卸载方法,而且你只需要担心一件事,而不是N个任务。(如果你想在不在前台的时候运行它,你需要一个服务)。

我从这里找到了很棒的教程

服务将每隔30分钟在后台定期运行。根据需求进行更改


这可能会对您有所帮助。

使用web服务。您想问什么?如何经常访问web服务或如何每5/10秒使用一次web服务?我需要每5/10秒使用一次web服务。他正在请求web服务。这意味着他将使用HTTP,因此如果他使用处理程序,他将在UI线程上运行HTTP请求时遇到异常。不幸的是,我现在无法提供示例,我以前使用sendMessage和postDelay从处理程序更新UI,以反复重新启动同一进程。我做得很好。但是我现在没有这个项目,更新UI很好。执行web服务请求不会。如何将服务/线程设置为每5/10秒运行一次?提供的代码显示了如何创建服务以及如何重复它,但我不确定如何启动它。我是否使用MainActivity的onCreate方法启动它?如果您引用链接,请在此处复制一些相关的解决方案,因为链接可能会消亡。