public class get extends AsyncTask<String,Void,Void>
{
@Override
protected Void doInBackground(String... params) {
// TODO Auto-generated method stub
try {
URL url = new URL("http://c69282.r82.cf3.rackcdn.com/IMG_0755-Edit-4.jpg") ;
URLConnection connect = url.openConnection();
InputStream in = new BufferedInputStream(connect.getInputStream());
Bitmap img = BitmapFactory.decodeStream(in);
image.setImageBitmap(img);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
这是我的AsyncTask
,当我尝试在主线程中运行它时,应用程序崩溃了。
如果我键入它就可以正常工作
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().detectAll().penaltyLog().build();
StrictMode.setThreadPolicy(policy);
但是,创建的全部目的AsyncTask
是摆脱使用该代码的需要。
更新:我在执行后放置了 image.setImageBitmap(img) 并且它有效。多谢你们!