2017-02-23 3 views
0

Ich benutze Erreichbarkeit, um Internet-Verbindung zu behandeln. Wenn das Internet nicht verbunden ist, zeige ich den Alarm an, dass ich nicht mit dem Internet verbunden bin.Swift Griff langsam Internetverbindung

Wenn jedoch die Internetgeschwindigkeit langsam ist und das Ziehen der Daten aus der API mehr als 10 Sekunden dauert, muss ich dem Benutzer anzeigen, dass die Internetverbindung langsam ist.

+0

Ich denke, Sie können es mit Anfrage Timeout tun. Wenn das Zeitlimit der Anfrage auftritt, können Sie einen spezifischen Fehlercode erhalten, so dass Sie zu diesem Zeitpunkt den langsamen Internetgeschwindigkeitsdialog anzeigen können –

Antwort

0

Ich denke, Sie müssen das Zeitintervall der spezifischen Anfrage, wo Sie keine Antwort erhalten in der Zeitleiste zu erhöhen. Wenn Sie Alamofire verwenden, können Sie das Zeitüberschreitungsintervall erhöhen, indem Sie folgen.

Swift 3

let manager = Alamofire.SessionManager.default 
manager.session.configuration.timeoutIntervalForRequest = 120 

manager.request("yourUrl", method: .post, parameters: ["parameterKey": "value"]) 

Auch in Fehler Rückruf finden Sie

switch response.result { 
      case .success: 

       // Successfull API Response 

      case .failure(let error): 
       errorHandler(error) 
       print(error.localizedDescription) 

       if let error = error as? NSError { 
        print(error.code) // this will print error code      
       } 
    } 

Lassen Sie mich erhalten wissen, wenn Sie weitere Hilfe benötigen.