Быстрая проверка скорости сети

Я хочу проверить скорость сети из моего приложения swift. Я нашел много постов, описывающих Reachability специально определите способ определения, является ли соединение доступным или нет, и является ли оно соединением WIFI или WWAN.

Мой вопрос: возможно ли определить тип WWAN (2G, 3G, 4G...)?

2 ответа

Решение

Вы можете проверить это с помощью CoreTelephony. Например:

let telInfo = CTTelephonyNetworkInfo()
if telInfo.currentRadioAccessTechnology == CTRadioAccessTechnologyLTE {
    // Device has a LTE connection
}

Вы можете найти список всех технологий CTRadioAccessTechnology здесь.

Надеюсь, это поможет!

Вы можете использовать alamofire для запроса сети, и вы сможете проверить подключение к Интернету по его типу.

let net = NetworkReachabilityManager()
net?.startListening()

net?.listener = {status in

if  net?.isReachable ?? false {

    if ((net?.isReachableOnEthernetOrWiFi) != nil) {
        //do some stuff
    }else if(net?.isReachableOnWWAN)! {
        //do some stuff
    }
 }
 else {
    print("no connection")
 }
}

Для ссылки https://github.com/Alamofire/Alamofire

Другие вопросы по тегам