2017-06-29 3 views
-3

Wie können Sie den Benutzer benachrichtigen, dass es keine Netzwerkverbindung mit schnellen 3. I ist eine Reihe von Lösungen versucht haben, und keiner von ihnen bisher gearbeitet. Ich bin nicht auf der Suche für die Geschwindigkeit der Netzwerkverbindunganzeigen Warnen, wenn keine Netzwerkverbindung

+0

Mögliche Duplikat von [Wie die Netzwerkgeschwindigkeit unter Verwendung von schnellen überprüfen] (https://stackoverflow.com/questions/38635804/how-to-check- the-Netzwerk-Speed-using-swift) – Rob

+0

Mögliche Duplikat [Pop-up-Nachricht, wenn Erreichbarkeits Verbindung während der Verwendung der App (IOS Xcode swift) verloren] (https://stackoverflow.com/questions/31400192/popup-alert-when -reachability-Anschluss-is-lost-in-mit-der-App-ios-Xcode) – fpg1503

Antwort

1

eine Menge von Ressourcen Es gibt die zeigen, wie die Internet-Verbindung zu überprüfen. Z. B. von this.

func isInternetAvailable() -> Bool 
    { 
     var zeroAddress = sockaddr_in() 
     zeroAddress.sin_len = UInt8(MemoryLayout.size(ofValue: zeroAddress)) 
     zeroAddress.sin_family = sa_family_t(AF_INET) 

     let defaultRouteReachability = withUnsafePointer(to: &zeroAddress) { 
      $0.withMemoryRebound(to: sockaddr.self, capacity: 1) {zeroSockAddress in 
       SCNetworkReachabilityCreateWithAddress(nil, zeroSockAddress) 
      } 
     } 

     var flags = SCNetworkReachabilityFlags() 
     if !SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) { 
      return false 
     } 
     let isReachable = flags.contains(.reachable) 
     let needsConnection = flags.contains(.connectionRequired) 
     return (isReachable && !needsConnection) 
    } 

    func showAlert() { 
     if !isInternetAvailable() { 
      let alert = UIAlertController(title: "Warning", message: "The Internet is not available", preferredStyle: .alert) 
      let action = UIAlertAction(title: "Dismiss", style: .default, handler: nil) 
      alert.addAction(action) 
      present(alert, animated: true, completion: nil) 
     } 
    } 

Sie müssen importieren:

import Foundation 
import SystemConfiguration 
+0

Muss ich diesen Code setzen in meinem viewcontroller.swift – GoGode

+0

Sie können auch anrufen 'showAlert()' 'von viewDidLoad()' fort t schätzend. – Lawliet

+0

Aber wo kann ich den Code zu setzen, die Sie – GoGode

Verwandte Themen