android bug:HttpURLConnection.getContentLength()返回为-1

bug现象

使用HttpURLConnection下载图片,发现有的图片可以下载有的图片无法下载。

bug原因

经过debug,发现工具类在下载前判断文件大小,getContentLength()返回为-1,中断下载。如下所示:
在这里插入图片描述

在排除了网络原因和服务器原因后发现是HttpURLConnedtion无法识别有些图片的编码格式导致无法正确获取文件大小。

解决方法

给HttpURLConnection添加一行代码,让HttpURLConnection可以识别各种格式的图片,代码如下:

conn.setRequestProperty("Accept-Encoding", "identity");

希望可以解决小伙伴们的问题。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章