2015-02-09 8 views
2

В моем приложении мне нужно рассчитать скорость загрузки. Моя проблема в том, что сервер не возвращает Content-Length. Чтобы вычислить длину, мы использовали getBody().length() из Retrofit Response, но это работает только в том случае, если журналы включены, если отключить журналы, то это значение равно -1. Я пытаюсь получить длину, добавляя Interceptor, но у меня та же проблема response.body().contentLength() is -1. Вы знаете, как я могу получить длину ответа?Как узнать длину в Okhttp Response?

Спасибо!

+0

Вы нашли решение? –

ответ

0

Ваш сервер не отправляет длину. Невозможно узнать, не читая весь документ.

К счастью, вам не нужна длина, чтобы вычислить скорость загрузки. Просто верните чистые байты, деленные на время, прошедшее. 1 MiB за 4 секунды составляет 250 KiB в секунду.

Смежные вопросы