Загрузка больших файлов с AFNetworking
Я пытаюсь реализовать загрузку большого файла и показать пользователю текущий прогресс, но заблокировать:
-[AFURLConnectionOperation setDownloadProgressBlock:]
возвращается неверноbytesRead
а такжеtotalBytesRead
значения (они меньше, чем должны быть).
Например: если у меня есть файл размером 90 МБ и когда он полностью загружается, последний вызов блока вsetDownloadProgressBlock:
дает мнеtotalBytesRead
значение около 30 МБ. С другой стороны, если размер файла составляет 2 МБ, последний вызов блока дает правильное значениеtotalBytesRead
Значение 2 МБ.
AFNetworking обновлен до последней версии с GitHub.
Если AFNetworking не может сделать это правильно, какое решение я могу использовать?
Редактировать: Я определил, что даже если файл загружен не полностью (и это происходит каждый раз с относительно большим файлом), AFNetworking вызывает блок успеха в:
-[AFHTTPRequestOperation setCompletionBlockWithSuccess:failure:]
Я задал похожий вопросВот об этой ситуации, но не получил никаких ответов.
Я могу проверить загруженный код и реальные размеры файлов, ноAFNetworking
не имеет API для продолжения частичной загрузки.