我需要确定手机是否连接到我可以使用的wifi
if (status == ReachableViaWiFi) {
return @"Wifi";
} else if (status == ReachableViaWWAN)
{
//connection type
CTTelephonyNetworkInfo *netinfo = [[CTTelephonyNetworkInfo alloc] init];
if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyGPRS]) {
return @"2G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyEdge]) {
return @"2G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyWCDMA]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyHSDPA]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyHSUPA]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyCDMA1x]) {
return @"2G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyCDMAEVDORev0]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyCDMAEVDORevA]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyCDMAEVDORevB]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyeHRPD]) {
return @"3G";
} else if ([netinfo.currentRadioAccessTechnology isEqualToString:CTRadioAccessTechnologyLTE]) {
return @"4G";
}
}
但是,当手机使用移动数据时,我想获得准确的速度 - 例如 250kbps。我发现一些博客有人建议下载文件并记录下载所花费的时间,从而计算速度。我不想使用这种方法。
Apple 是否提供任何库来获得速度?
Best Answer-推荐答案 strong>
- 如果你知道确切的下载速度,那么你需要使用博客人所说的方法,即下载一个文件并记录下载所用的时间,从而计算速度。没有任何具体的框架。使用
transfer_speed = bytes_transferred / time_required_for_transfer
您可以获得下载速度。
- 通过了解网络类型(2G、3G、4G 等),您可以为该网络类型提供特定的速度。但主要问题是您无法获得准确的速度。
关于ios - 在移动设备(ios)上测量 [以 kbps 为单位] 互联网速度,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/40108461/
|