ios - custom view navigation bar swift
NSURLSession dataTaskForRequest: finalizaciĆ³n: selector no reconocido enviado a la instancia (4)
Al tratar de crear mi propio objeto de sesión NSURLSession()
y solicitar una url recibo una excepción de selector no reconocido, pero cuando uso la sesión compartida NSURLSession.sharedSession()
todo funciona bien. ¿Cómo?
var url = NSURL(string: "http:/www.google.com")
if url != nil {
//throws unrecognized selector when dataTaskWithURL is called
let session=NSURLSession()
session.dataTaskWithURL(url!)
//works
let sharedSession=NSURLSession.sharedSession()
sharedSession.dataTaskWithURL(url!)
}
Además de la sesión compartida, NSURLSession
debe inicializarse con uno de estos dos métodos
init(configuration configuration: NSURLSessionConfiguration)
init(configuration configuration: NSURLSessionConfiguration,
delegate delegate: NSURLSessionDelegate?,
delegateQueue queue: NSOperationQueue?)
En SWIFT 3.0 y versiones posteriores:
URLSession.shared.dataTask(with: url, completionHandler:
{
(data, response, error) in
//Your code
}).resume()
Haga la inicialización mientras declara:
var session = URLSession(configuration: .default)
Tienes que URLSession
con una configuración:
URLSession(configuration: .default)
o usa sesión compartida
URLSession.shared