Asynctask状态始终显示正在运行

Rej*_*eji 5 android android-asynctask

我想在完成第一个任务后执行asynctask.但是当打印第一个任务的状态时,它总是显示RUNNING.如果并行执行两个任务,则只执行较小的任务.我正在运行oncreate方法.任何想法?

这是我的代码示例

public class test extends Activity 
 {

    ExecuteTask1 task1; 
    ExecuteTask2 task2; 
 @Override
public void onCreate(Bundle savedInstanceState)
     {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

            task1 = new ExecuteTask1();
            task1.execute(token);
            System.out.println(task1.getStatus());
            if(task1.getStatus() ==AsyncTask.Status.FINISHED)
            {
                task2 = new ExecuteTask2();
                task2.execute(token);
            }

     }
}
Run Code Online (Sandbox Code Playgroud)

Ted*_*opp 4

在您现在的代码中,您没有给任务1 时间来完成。从任务1的方法启动任务2 onPostExecute。(您必须修改类 ExecuteTask1 中的代码才能使其工作。)

或者,让任务 1 回调您的活动(或向其发布消息或其他内容),onPostExecute以便您的活动可以启动任务 2。