我已经在Stack Overflow和互联网上研究了如何从URL
加载图像并在应用程序上将其显示为Bitmap
(最初为.png
文件)。我按照说明操作,并使用如下代码,其中的代码扩展为AsyncTask
。
try {
imageUrl = new URL(currentApp.getImageURL());
HttpURLConnection urlConnection = (HttpURLConnection)
imageUrl.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setDoInput(true);
***urlConnection.connect();
InputStream inputStream = urlConnection.getInputStream();
imageBitmap = BitmapFactory.decodeStream(inputStream);
viewHolder.tvImage.setImageBitmap(imageBitmap);
inputStream.close();***
} catch (MalformedURLException e) {
Log.d(TAG, "getView: " + e.toString());
} catch (IOException e) {
Log.d(TAG, "getView: " + e.toString());
} finally {
}
当我使用调试工具来帮助我时,我发现连接的响应代码是200,但是对于imageBitmap = BitmapFactory.decodeStream(inputStream);
,我得到imageBitmap
的空值。
提前谢谢!
答案 0 :(得分:0)
Decode Stream返回null如果输入流为空,或者不能用于解码位图。尝试从其他网址下载图片,我正在下载YouTube播放列表的缩略图,并且我的工作效率为110%,请尝试此代码
<input>