Swift 3 на Xcode 8β3.URLSession, забрасывающий исключение NSURLSession
Любые идеи, почему код ниже бросает ошибку (далее) ниже, особенно учитывая то, что я использую URLSession не NSURLSession?
КОД
public func updateCurrentConditions() {
let session = URLSession()
let url = URL(string: "http://api.wunderground.com/api/\(key)/conditions/51.32,-1.0.json")!
let loadDataTask = session.dataTask(with: url, completionHandler: self.dataHandler)
loadDataTask.resume()
}
private func dataHandler(data: Data?, response: URLResponse?, error: NSError?) -> Void {
print("dataHandler executed.")
}
ОШИБКА
неудачно: поймали "NSInvalidArgumentException", "- [NSURLSession dataTaskForRequest: завершение]: непризнанные селектор направлен например 0x7fac89569f00"
Ах, я попробовал несколько подобных вариантов, но, как, например, а не статические функции. Это работает. Ну, он компилируется и работает в любом случае. Тем не менее, вы не вызываете дескриптор завершения. :( –
@ VinceO'Sullivan, я считаю, что ваш код (с 'shared' fixed) должен работать. (Протестирован в примерном проекте с использованием другого URL-адреса.) Проверьте свой URL-адрес, ключ, настройки ATS ... Надеюсь, вы сможете решить эти проблемы – OOPer
Интересно. Хорошо работает при встраивании в приложение (одно представление), но, похоже, не вызывает обработчик завершения при вложении в рамки Cocoa Touch. –