Я испытываю странное поведение, отлаживающее мое приложение.Что вызывает странные различия с фоном URLSession между ios 8.1 и ios 10.2 на симуляторе?
У меня есть прямой вперед URLSession с фоновой конфигурацией:
let backgroundSessionConfiguration = URLSessionConfiguration.background(withIdentifier: (prefix + postfix))
let backgroundSession = Foundation.URLSession(configuration: backgroundSessionConfiguration, delegate: self, delegateQueue: OperationQueue.main)
progressView.setProgress(0.0, animated: false)
var request = URLRequest(url: dlUrl)
request.httpMethod = "GET"
request.cachePolicy = NSMutableURLRequest.CachePolicy.reloadIgnoringCacheData
let task = backgroundSession.downloadTask(with: request)
task.resume()
Моего тестом IST следующим образом:
- начала загрузки в приложении.
- Принесите приложение на задний план.
- уведомлять о завершении загрузки фона.
- После нажатия на приложении уведомлений появляется на передний план
Когда я попробовать это с симулятором под ИОСОМ 10.2 приложение приостанавливает загрузку после шага 2, а загрузка не заканчивается - нет никаких дальнейших ошибок сообщений или предупреждений. Когда я приношу приложение на передний план, загрузка возобновляется и заканчивается.
Но когда я пробую то же самое с симулятором и ios 8.1 все работает должным образом.
И теперь лучшая часть:
На устройства с прошивкой 10,2 все работает также, как и следовало ожидать, так что теперь возникает вопрос, почему не на тренажере? Может ли это быть связано с некоторыми ограничениями ресурсов, применяемыми в симуляторе?
Спасибо Duncan C за разъяснение. Мне было бы любопытно, если кто-нибудь столкнется с одной и той же проблемой ... –