Java 在android中下载图像

Java 在android中下载图像,java,android,Java,Android,我正在开发我的android应用程序,并试图从web服务器(本地主机IIS7)下载图像。但不幸的是,我的应用程序无法工作。实际上,当我运行应用程序时,它在ImageView中没有显示任何图片。 我编译了我的应用程序,但在logCat中没有发现任何错误!似乎一切都很好。只有一个异国情调的信息: 编舞跳过了32帧 但根据我的研究,我认为这不会影响我的申请。 还有一件事我想,OnPostExecute没有运行。但我找不到原因。 这是我的密码: 公共类广告扩展活动{ 私有InputStream Open

我正在开发我的android应用程序,并试图从web服务器(本地主机IIS7)下载图像。但不幸的是,我的应用程序无法工作。实际上,当我运行应用程序时,它在ImageView中没有显示任何图片。 我编译了我的应用程序,但在logCat中没有发现任何错误!似乎一切都很好。只有一个异国情调的信息:

编舞跳过了32帧 但根据我的研究,我认为这不会影响我的申请。 还有一件事我想,OnPostExecute没有运行。但我找不到原因。 这是我的密码:

公共类广告扩展活动{
私有InputStream OpenHttpConnection(字符串urlString)引发IOException{
InputStream in=null;
int响应=-1;
URL=新URL(URL字符串);
URLConnection conn=url.openConnection();
if(!(HttpURLConnection的连接实例))
抛出新IOException(“非Http连接”);
试一试{
HttpURLConnection httpConn=(HttpURLConnection)conn;
httpConn.setAllowUserInteraction(假);
httpConn.setInstanceFollowRedirects(真);
httpConn.setRequestMethod(“GET”);
httpConn.connect();
response=httpConn.getResponseCode();
if(response==HttpURLConnection.HTTP\u OK){
in=httpConn.getInputStream();
}
}
捕获(例外情况除外){
Log.d(“网络”,例如getLocalizedMessage());
抛出新IOException(“连接错误”);
}
返回;
}
私有位图下载IMAG(字符串URL){
位图=空;
InputStream in=null;
试一试{
in=OpenHttpConnection(URL);
位图=BitmapFactory.decodeStream(in);
in.close();
}捕获(IOE1异常){
Log.d(“NetworkActivity”,e1.getLocalizedMessage());
}
返回位图;
}
公共类下载任务{
受保护位图doInBackground(字符串…URL){
返回下载图像(URL[0]);
}
执行后受保护的void(位图结果){
试一试{
Log.d(“设置ImgView”、“确定”);
ImageView img=(ImageView)findViewById(R.id.imageView1);
设置图像位图(结果);
}
捕获(例外情况除外){
Log.d(“设置ImgView”、“错误”);
}
}
}
/**在首次创建活动时调用*/
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.ads);
日志d(“开始工作”,“正常”);
新建下载图像()。执行(“http://10.0.2.2:80/Urgence/document/img/my.jpg");
}   
}

我该怎么办

您可以使用一个库来更快地加载图像, 它会以您要求的质量缓存图像

按照第页中给出的代码片段很容易实现

你也可以得到像…这样的位图

// Load image, decode it to Bitmap and return Bitmap synchronously
Bitmap bmp = imageLoader.loadImageSync(imageUri);

请参阅onPostExecute()方法。方法的名称不正确。它不会给你任何错误???看看intentService和广播接收器。。。谷歌搜索它,因为有很多关于在后台下载文件的信息。@claivoyant谢谢!!它现在工作得很好!
// Load image, decode it to Bitmap and return Bitmap synchronously
Bitmap bmp = imageLoader.loadImageSync(imageUri);