How to check the network speed using swift

前端 未结 1 1176
无人共我
无人共我 2020-12-17 02:32

I have googled too many pages saying on the network reachability (only yes or no availibilty), but I never heard somebody could detect the network speed using Swift xcode en

相关标签:
1条回答
  • 2020-12-17 03:12

    I made this func to calculate the network speed in Swift 3. I download an image from my server and calculate the elapsed time.

     func testSpeed()  {
    
    
        let url = URL(string: "http://my_image_on_web_server.jpg")
           let request = URLRequest(url: url!)
    
        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("respons is nill")
                return
            }
    
    
                let length  = CGFloat( (resp?.expectedContentLength)!) / 1000000.0
    
                print(length)
    
    
    
            let elapsed = CGFloat( Date().timeIntervalSince(startTime))
    
            print("elapsed: \(elapsed)")
    
            print("Speed: \(length/elapsed) Mb/sec")
    
    
        }
    
    
        task.resume()
    
    
    }
    
    0 讨论(0)
提交回复
热议问题