今天写下载文件模块,文件可以下载,但是进度条没显示,经过调试,发现得到的下载文件长度为-1.经查找资料,解决。
// 创建连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//处理下载读取长度为-1 问题
conn.setRequestProperty("Accept-Encoding", "identity");
conn.connect();
// 获取文件大小
int length = conn.getContentLength();
原因是默认使用了gzip压缩导致无法提前获得下载文件大小,所以不让它压缩即可。