Быстрая проверка скорости сети
Я хочу проверить скорость сети из моего приложения 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