我想在完成第一个任务后执行一个异步任务。但是当打印第一个任务的状态时,它总是显示 RUNNING。如果并行执行两个任务,则只会执行较小的任务。我在 Activity 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);
}
}
}
最佳答案
现在在您的代码中,您没有给 task1 时间来完成。从 task1 的 onPostExecute
方法启动 task2。 (您必须修改类 ExecuteTask1 中的代码才能使其工作。)
或者,让 task1 在 onPostExecute
中回调您的 Activity (或向其发送消息或其他内容),这样您的 Activity 就可以启动 task2。
关于android - 异步任务状态始终显示正在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8337419/