Android 如何知道Okhttp响应的长度?

Android 如何知道Okhttp响应的长度?,android,retrofit,okhttp,Android,Retrofit,Okhttp,在我的应用程序中,我需要计算下载速度。我的问题是服务器没有返回内容长度。为了计算长度,我们使用了改装响应中的getBody().length(),但这仅在启用日志时有效,如果禁用日志,则此值为-1。我试图通过添加一个拦截器来获取长度,但我遇到了同样的问题response.body().contentLength()是-1。你知道如何获得响应长度吗 谢谢 您的服务器没有发送长度。不看完整的文件就无法知道 幸运的是,您不需要计算下载速度的长度。只需将返回的净字节除以经过的时间即可。4秒内的1个MiB

在我的应用程序中,我需要计算下载速度。我的问题是服务器没有返回
内容长度
。为了计算长度,我们使用了改装响应中的
getBody().length()
,但这仅在启用日志时有效,如果禁用日志,则此值为
-1
。我试图通过添加一个
拦截器来获取长度,但我遇到了同样的问题
response.body().contentLength()
-1
。你知道如何获得响应长度吗


谢谢

您的服务器没有发送长度。不看完整的文件就无法知道


幸运的是,您不需要计算下载速度的长度。只需将返回的净字节除以经过的时间即可。4秒内的1个MiB为每秒250千磅。

您找到解决方案了吗?