Я загружаю файл на сервер, используя данные из нескольких форм с NSURLSession
. Когда приложение идет в фоновом режиме, я хочу приостановить запрос и возобновить, когда приложение снова появится на переднем плане. Поэтому я просто делаю [session suspend]
и [session resume]
. Это нормально работает, когда приложение выходит только в фоновом режиме. Но если устройство блокируется, когда вы возвращаетесь на передний план и пытаетесь возобновить работу, я получаю сообщение об ошибке сетевого соединения. Я понимаю, что когда устройство заблокировано, все открытые сокеты закрыты и, следовательно, проблема, но есть ли способ сделать это без необходимости запуска загрузки с самого начала?NSUrlSession приостанавливает и возобновляет выпуск при блокировке устройства
5
A
ответ
2
Вы должны переключить сеанс переднего плана на фоновый сеанс до того, как приложение перейдет на задний план, а затем нет необходимости его приостанавливать. Ваш файл будет загружен ОС в фоновом режиме (в конце концов).
0
К сожалению, согласно documentation, вам необходимо использовать файл для загрузки фона.
С «фоновой передачи соображения»:
загрузить только задачи из файла поддерживаются (загрузка из объектов данных или поток не сможет после выхода из программы).
(В дополнение к этому, нет никакой гарантии, когда и почему ваше приложение будет прекращено Избегая устройство блокировки в одиночку не будет достаточно,.. Есть множество других способов, ваше приложение может быть прекращено)
Проблема заключается в том, что для загрузки NSUrlSession необходимо загрузить непосредственно из файла, но поскольку мы используем данные с несколькими данными, мы должны перейти с приостановкой/возобновлением. –
сохранить его в файл? : D –
Проблема заключается в ограничениях сервера, а не на клиенте. –