Android getContentLength在尝试下载zip文件时返回-1

Android getContentLength在尝试下载zip文件时返回-1,android,urlconnection,Android,Urlconnection,我试图从服务器下载zip文件并显示progressBar,但我得到了conexion.getContentLength()=-1。这就是为什么我不能显示进度对话框,下载工作正常。我的代码如下: URLConnection conection = fileUrl.openConnection(); conection.connect(); int lenghtOfFile = conection.getContentLength(); 但是我得到-1 当未设置响应的内容长度标题字段时

我试图从服务器下载zip文件并显示progressBar,但我得到了
conexion.getContentLength()=-1
。这就是为什么我不能显示进度对话框,下载工作正常。我的代码如下:

  URLConnection conection = fileUrl.openConnection();
  conection.connect();
  int lenghtOfFile = conection.getContentLength();
但是我得到-1

当未设置响应的
内容长度
标题字段时,这是预期的行为。这是后端问题,而不是客户端问题。作为解决方法,您可以显示不确定的
进度条
(旋转条),而不是确定条

但是我得到-1


当未设置响应的
内容长度
标题字段时,这是预期的行为。这是后端问题,而不是客户端问题。作为解决方法,您可以显示不确定的
ProgressBar
(旋转的一个),而不是确定的尝试
HttpURLConnection
而不是
URLConnection
并设置
setChunkedStreamingMode(100)


尝试
HttpURLConnection
而不是
URLConnection
并设置
setChunkedStreamingMode(100)


好的,谢谢,我会把你的答案发给后端开发者。好的,谢谢,我会把你的答案发给后端开发者。
HttpURLConnection urlConnection = (HttpURLConnection) fileUrl.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setDoOutput(true);
urlConnection.setChunkedStreamingMode(100);
urlConnection.connect();
int lenghtOfFile = urlConnection.getContentLength();