因此,我正在使用两个扩展Asynctask的不同类,但是每次我尝试执行它们时,都会对我大吼大叫,无法执行任务:该任务已经在运行。
我在网站上寻找了解决方案,他们都建议创建新的实例以使错误消失,但是我有两个不同的类,不能使用同一线程。我在做什么错?
try{
DownloadTask downloadTask = new DownloadTask();
String result = downloadTask.execute("https://newsapi.org/v2/everything?q=bitcoin&apiKey=0310302f495d452ab7bc5e77db8dd0c0").get();
try{
JSONObject jsonObject = new JSONObject(result);
String getMain = jsonObject.getString("articles");
JSONArray jsonArray = new JSONArray(getMain);
DownloadImage downloadImage = new DownloadImage();
for (int i = 0; i < jsonArray.length() ; i++){
JSONObject item = jsonArray.getJSONObject(i);
String desc = item.getString("description");
String image = item.getString("urlToImage");
String title = item.getString("title");
Bitmap getImg = downloadImage.execute(image).get();
Articles article = new Articles(getImg ,title,desc);
articles.add(article);
}
recycleAdapter.notifyDataSetChanged();
Log.i("hey",Integer.toString(recycleAdapter.getItemCount()));
}catch (Exception e){
Log.i("erro",e.toString());
}
}catch (Exception e){
String err = (e.getMessage()==null)?"somethin wrong":e.getMessage();
Log.e("erroor:",err);
}
我在for循环中初始化了该类,因此在每个项目之后,它都会反复地以有线方式初始化该类,这确实成功了!