Пролог
После статьи [request release];
в блоге создателя этого фреймворка и - по общему признанию - не большого поклонника ASIHTTPRequest (отныне: ASI)во-первых, мне интересно, как / почему это вообще началось.
Первое, что я заметил, прочитав пост, в котором объявлено о создании ASI как , была проста в использовании оболочка CFNetwork .второй абзац:
NSURLConnection прост в использовании, но он не дает возможности получить информацию о ходе загрузки - очень важно, если ваше приложение связано с загрузкой больших файлов.
Не совсем тривиально получить устаревший справочный материал Apple по активно разрабатываемому и поддерживаемому API, поэтому мне не удалось получить документацию по конкретным классам, предшествующим 2008 году, но из формирующегося изображения приведенное выше утверждение выглядит как неверно:
Когда было объявлено ASI, у NSURLRequest
был метод для возврата HTTPBodyStream
на самом деле, этот метод восходит где-то задолго до 2008 года, возможно, в 2006-м, но его трудно определить, поскольку URL-адреса ссылок Apple со временем сильно менялись, что делает использование archive.org довольно хлопотным.
Итак, после этого довольно длинного пролога, здесь актуальный вопрос:
Возможно / невозможно просто опрашивать HTTPBodyStream
на предмет значения его свойства NSStreamFileCurrentOffsetKey
через подходящие интервалы или было ASIэто чудовище из нескольких тысяч строк кода CoreFoundation, родившееся из-за небольшого недосмотра?
Независимо от этого, почему он был сохранен / используется ли он еще долго после добавления обратных вызовов процесса загрузки к * 1031?* в iOS 3.0?
Тем более, что те ресурсы, которые действительно получают прибыль от отслеживания процесса загрузки, в любом случае должны передаваться в потоковом режиме ...
Я все еще вижу, что ASI рекомендовал довольно много здесь, на StackOverflow, если кто-то спросито вариантах загрузки данных - независимо от того, не играет ли он хорошо с любым изболее новые вещи Apple, такие как платформа Twitter или ARC, а также предупреждения и проблемы статического анализа, которые он вызывает.Что с этим?
Спасибо за любые идеи!