2017-09-27 3 views

Répondre

0

deux étapes sont impliquées. D'abord détecter quel type de réseau êtes-vous. deuxième est ce que la bande passante. Il y a deux fonctions ci-dessous pour effectuer chaque tâche

Cette fonction permet d'identifier le réseau sur lequel vous vous trouvez.

enum ReachabilityType: CustomStringConvertible { 
case wwan 
case wiFi 
var description: String { 
    switch self { 
    case .wwan: return "WWAN" 
    case .wiFi: return "WiFi" 
    } 
} 

}

Cette fonction est d'obtenir la vitesse de la bande passante.

func bandWidthCheck() { 
let sample = URL(string: "http:exampleURL") 
let request = URLRequest(url: sample!) 
let session = URLSession.shared 
let startTime = Date() 
let task = session.dataTask(with: request) { (data, resp, error) in 
    guard error == nil && data != nil else{ 
     print("connection error or data is nill") 
     return 
    } 
    guard resp != nil else{ 
     print("response is nill") 
     return 
    } 
    let size = CGFloat((resp?.expectedContentLength)!)/1000000.0 
    print(size) 

    let time = CGFloat(Date().timeIntervalSince(startTime)) 
    print("elapsed: \(time)") 
    print("Speed: \(size/time) Mb/sec") 
} 
task.resume() 

}