Приложение загружает файл (plist), который генерируется сервером. Сервер создает время для генерации файла, поэтому я хотел бы показать прогресс (возможно, просмотреть UIProgressView, но это не важно).Помощь при получении NSURLConnection progress
Поскольку файл, который я загружаю, еще не был создан в начале запроса, мы не знаем expectedContentLength
. Однако у меня есть средства для предоставления обновлений прогресса из самого скрипта [PHP]. Я использую ob_flush()
для каждой строки в файле, чтобы сделать это, что отлично работает в браузере.
Но когда я делаю запрос из приложения, я получаю звонок только от connection:didReceiveData:
после того, как скрипт завершил выполнение, так что это не очень полезно.
Так что мой вопрос сводится к следующему:
Как я могу использовать прогресс такого php-скрипта из своего приложения?
Я бы не прочь отправить 2 запроса на сервер, первый из которых генерирует файл и предоставляет обновления при этом, а затем другой для загрузки фактического файла.
Поскольку ни один из моих методов-делегатов NSUrlConnection не вызывается до завершения запроса, что должен сделать мой скрипт для запуска этих методов?
ob_flush() работает для меня в браузере; Я получаю инкрементные обновления. Однако, когда вы делаете запрос из приложения, я получаю все в одном куске. – kbanman
Wi-Fi или 3G? Какую шкалу времени мы говорим здесь; делает сценарий как 1 секунду, или> 10s? –