Java 在Android中循环异步任务-好方法是什么?
我想每隔几分钟将数据从Web服务器解析到我的android设备。 我已经实现了一个AsyncTask,它正在更新OnPostExecute()方法中的UI 我没有找到一个好方法来重复这项任务。我尝试了处理程序、线程和ExecutorServices…在数据更新后,我没有设法使Asynctask重复。关于这个主题有数百条线索,每一条都有不同的结果 在我的处理程序尝试重新启动runnable后,我的源返回了一些非法状态异常Java 在Android中循环异步任务-好方法是什么?,java,android,multithreading,android-asynctask,Java,Android,Multithreading,Android Asynctask,我想每隔几分钟将数据从Web服务器解析到我的android设备。 我已经实现了一个AsyncTask,它正在更新OnPostExecute()方法中的UI 我没有找到一个好方法来重复这项任务。我尝试了处理程序、线程和ExecutorServices…在数据更新后,我没有设法使Asynctask重复。关于这个主题有数百条线索,每一条都有不同的结果 在我的处理程序尝试重新启动runnable后,我的源返回了一些非法状态异常 12-15 21:15:36.909: E/AndroidRuntime(2
12-15 21:15:36.909: E/AndroidRuntime(28256): java.lang.IllegalStateException: Cannot execute task: the task has already been executed (a task can be executed only once)
源(onCreate()…):
如何在不阻塞UI和不编写脏代码的情况下重复任务?AsyncTask实例只能调用一次。要进行第二次调用,您需要创建一个新实例。有一种方法,您实际上需要一个异步任务
doInBackground(...){
while(Condition){
//do your stuff
//...
Thread.sleep(5000)
}
}
非常感谢,它正在工作。将在接下来的几分钟内接受。
doInBackground(...){
while(Condition){
//do your stuff
//...
Thread.sleep(5000)
}
}