基本Android AsyncTask,执行doInBackground()时出错
[已解决] 我正在尝试使用AsyncTask创建一个基本线程,如Android API文档所示。然而,我在尝试执行最简单的线程时遇到了一个错误基本Android AsyncTask,执行doInBackground()时出错,android,multithreading,android-asynctask,Android,Multithreading,Android Asynctask,[已解决] 我正在尝试使用AsyncTask创建一个基本线程,如Android API文档所示。然而,我在尝试执行最简单的线程时遇到了一个错误 AsyncTask task = new AsyncTask<Void, Integer, Boolean>() { @Override protected Boolean doInBackground(Void... arg0) { try { Thread.sleep(60
AsyncTask task = new AsyncTask<Void, Integer, Boolean>() {
@Override
protected Boolean doInBackground(Void... arg0) {
try {
Thread.sleep(6000);
System.out.println("DELAYED TEST TEST TEST");
}catch(Exception e) {
}
return true;
}
};
如果有人能帮我解决这个问题,我将非常感激!
谢谢
修正:
AsyncTask task=new AsyncTask()
我想您不会用任何参数调用execute方法,是吗?这就解释了原因。基本上,由于您将引用声明为AsyncTask
,而不包含任何类型,因此它需要所有对象。给出声明类型:
AsyncTask<Void, Integer, Boolean> task = new ...
AsyncTask任务=新建。。。
它应该知道如何处理它。试试这个。。。。。AsyncTask task=new AsyncTask()是在UI线程上创建的任务实例吗?@kumar:我不这么认为。泛型类型没有编译。@kumar解决了这个问题,非常感谢@YashwanthKumar为什么要解决这个问题?泛型类型参数并不像njzk2所说的那样在编译中持久存在。
AsyncTask<Void, Integer, Boolean> task = new AsyncTask<Void, Integer, Boolean>()
AsyncTask<Void, Integer, Boolean> task = new ...