如何在android中递归调用AsyncTask?

如何在android中递归调用AsyncTask?,android,recursion,android-asynctask,Android,Recursion,Android Asynctask,我尝试了两个链接:和 但是他们没有解决我的问题。 我想在间隔10秒后递归使用asynctask。 我正在创建一个应用程序,其中每当某个条件完全满足时,会显示一个对话框,其中包含一些内容,我需要更改该内容,因为我正在尝试使用线程和处理程序的组合调用asynctask 提前感谢 创建一个runnable,您可以在其中反复启动asynctask,并通过调用handler.postDelayed(repeatingTask,1000)首次启动任务 This repeats every 1000ms: h

我尝试了两个链接:和

但是他们没有解决我的问题。 我想在间隔10秒后递归使用asynctask。 我正在创建一个应用程序,其中每当某个条件完全满足时,会显示一个对话框,其中包含一些内容,我需要更改该内容,因为我正在尝试使用线程和处理程序的组合调用asynctask


提前感谢

创建一个runnable,您可以在其中反复启动asynctask,并通过调用handler.postDelayed(repeatingTask,1000)首次启动任务

This repeats every 1000ms:
handler must be final as it is accessed within inner class

final Handler handler = new Handler();
Thread threadObj = new Thread() {
    public void run() {

        // Asynctask

        // delay
        handler.postDelayed(this, 1000);
    }
};


//to start thread
threadObj.start();


//to stop thread
handler.removeCallbacks(threadObj);
这样runnable将一次又一次地重复。希望这对您有所帮助

public void recur()
{
private Runnable repeat = new Runnable() {
    public void run() {
         new AsycnCaller().execute();

                      handler.postDelayed(this, 10000);
    }
};

}
在需要的地方调用此函数启动
另外,请在asyntask执行后调用此函数。请显示您的代码,以便查看,并且有人可以根据您缺少的内容帮助您。您不能(也不应该)“递归”调用AsyncTask。也许您选择了错误的单词?你想做什么?@323go抱歉,伙计们回复太晚了。。。。。我想你是对的,我不应该递归调用异步任务。。。。我试图弹出一个对话框,其中包含一些来自url的报警数据,我们可以关闭该对话框。。。。。我想在10秒后检查url,以查找新的报警数据,当我收到新数据时,弹出窗口将再次出现。这就是我想做的。嘿,伙计们。。。。应用程序是否可能在手机上运行,但在平板电脑上崩溃,原因是:java.lang.RuntimeException:无法在未调用Looper的线程内创建处理程序。prepare()…对于新手开发人员来说,这是最好的答案
public void recur()
{
private Runnable repeat = new Runnable() {
    public void run() {
         new AsycnCaller().execute();

                      handler.postDelayed(this, 10000);
    }
};

}