YST*_*Tai 2 networking cellular-network 3g ios
我正在开发iOS应用程序,并希望确定该设备具有哪种类型的蜂窝连接.
我最感兴趣的是我的设备使用的蜂窝网络:2G或3G,或其他.
但是,Reachability.h仅提供wifi或3G检查.
我如何检查2G,3G等?
Nis*_*ant 13
在iOS 7.0+中,我们有CoreTelephony框架,可以为我们提供有关网络类型的必要详细信息.
CTTelephonyNetworkInfo *telephonyInfo = [[CTTelephonyNetworkInfo alloc] init];
NSString *currentRadio = telephonyInfo.currentRadioAccessTechnology;
if ([currentRadio isEqualToString:CTRadioAccessTechnologyLTE]) {
// LTE
} else if([currentRadio isEqualToString:CTRadioAccessTechnologyEdge]) {
// EDGE
} else if([currentRadio isEqualToString:CTRadioAccessTechnologyWCDMA]){
// 3G
}
Run Code Online (Sandbox Code Playgroud)
Rap*_*tor 12
2G/3G无法通过Reachability.h
任何其他第三方库进行区分,因为iPhone仅向API提供网络类型信息(WWAN,WiFi,无网络).
但是,如果您能够知道2G或3G网络的IP范围,则可以确定iPhone正在使用的网络速度/频率.