NSURLSession , handleEventsForBackgroundURLSession, не вызывается на переднем плане?

Работа над приложением, выполняющим фоновую загрузку с использованием NSURLSession.

backgroundSessionConfigurationWithIdentifier

И получение

handleEventsForBackgroundURLSession

правильно перезвоните в делегате приложения, когда приложение не находится на переднем плане. Мой вопрос: должен ли я ожидать, что это произойдет, если приложение находится на переднем плане (т.е. запущено)? Причина основана на том вызове, показывающем пользователю сообщение о том, что загрузка завершена.

или у меня должна быть своя логика, чтобы после завершения всех задач и загрузки прошла успешно?


person Huang    schedule 05.03.2015    source источник
comment
См. эту проблему. Сталкиваетесь ли вы с теми же проблемами с примерами, приведенными в приведенной выше ссылке?   -  person Utsav Dusad    schedule 17.03.2016
comment
handleEventsForBackgroundURLSession метод не вызывается на переднем плане. В iOS, когда фоновая передача завершается или требуются учетные данные, если ваше приложение больше не работает, iOS автоматически перезапускает ваше приложение в фоновом режиме и вызывает указанный выше метод для объекта UIApplicationDelegate вашего приложения. См.: Источник.   -  person Utsav Dusad    schedule 17.03.2016


Ответы (1)


Я думаю, что handleEventsForBackgroundURLSession никогда не произойдет, если приложение находится на переднем плане. если вы хотите показать сообщение пользователю на переднем плане, используйте <NSURLSessionDelegate, NSURLSessionTaskDelegate>

person dosuken123    schedule 17.07.2015