android - 从网络解码图像时出现java.io.EOFException

标签 android

我正在启动几个线程来从网络上获取图像。问题是我在一个或两个请求中随机得到 java.io.EOFException。这是我正在使用的代码,异常发生在 decodeStream 调用上:

InputStream inputStream = (InputStream) new URL(slot.mUrl).getContent();
mBitmap = BitmapFactory.decodeStream(inputStream);
inputStream.close();

这是堆栈信息:

java.io.EOFException
at libcore.io.Streams.readAsciiLine(Streams.java:203)
at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:560)
at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:813)
at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:274)
at libcore.net.http.HttpURLConnectionImpl.getHeaderField(HttpURLConnectionImpl.java:130)
at java.net.URLConnection.getContentType(URLConnection.java:326)
at java.net.URLConnection.getContent(URLConnection.java:193)
at java.net.URL.getContent(URL.java:447)

知道问题出在哪里吗?

谢谢, 雅各布姆

最佳答案

为什么不使用通用图像加载器从 URL 加载图像,因为 Inputstream 在 android 中有时会变为 null 我用过这个:https://github.com/nostra13/Android-Universal-Image-Loader

关于android - 从网络解码图像时出现java.io.EOFException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18125867/

相关文章:

android - 链接 Intent 安卓

android - 带 Kotlin 协程的 NetworkBoundResource

Android Receiver 随机禁用

android - AutoCompleteTextView 没有完成括号内的单词

java - 通过单击 ImageView 获取图像上的 x 和 y 点对应位置?

java - Android语音识别与数组

android - 为什么我在 Xamarin Forms for Android 中出现 'AnimationViewRenderer doesn' t 存在于上下文中的错误?

android - Google Analytics 将 Google Cloud Test Lab 测试检测为活跃用户和新用户

android - 在 View 的构造函数中使用 View.getParent()

android - 在cygwin中编译android源代码