美文网首页
网络监测

网络监测

作者: 移动端_小刚哥 | 来源:发表于2017-12-05 19:00 被阅读8次

要获取当前网络状态(Wi-Fi、4G、3G)

+ (NSString *)getNetconnType{
    
    NSString *netconnType = @"";
    Reachability *reach = [Reachability reachabilityWithHostName:@"www.apple.com"];
    switch ([reach currentReachabilityStatus]) {
        case NotReachable:// 没有网络
        {
            netconnType = @"no network";
        }
        break;
        case ReachableViaWiFi:// Wifi
        {
            netconnType = @"Wifi";
        }
        break;
            
            
        case ReachableViaWWAN:// 手机自带网络
        {
            // 获取手机网络类型
            CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];
            NSString *currentStatus = info.currentRadioAccessTechnology;
            if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyGPRS"]) {
                netconnType = @"GPRS";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyEdge"]) {
                netconnType = @"2.75G EDGE";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyWCDMA"]){
                netconnType = @"3G";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyHSDPA"]){
                netconnType = @"3.5G HSDPA";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyHSUPA"]){
                netconnType = @"3.5G HSUPA";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyCDMA1x"]){
                netconnType = @"2G";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyCDMAEVDORev0"]){
                netconnType = @"3G";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyCDMAEVDORevA"]){
                netconnType = @"3G";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyCDMAEVDORevB"]){
                netconnType = @"3G";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyeHRPD"]){
                netconnType = @"HRPD";
            }else if ([currentStatus isEqualToString:@"CTRadioAccessTechnologyLTE"]){
                netconnType = @"4G";
            }
        }
            break;
        default:
            break;
    }
    return netconnType;
}

每一项是什么意思不太清楚,但是有时候要用区分2G、3G、4G和wifi

/*
             NSArray *typeStrings2G = @[CTRadioAccessTechnologyEdge,
             CTRadioAccessTechnologyGPRS,
             CTRadioAccessTechnologyCDMA1x];
             
             NSArray *typeStrings3G = @[CTRadioAccessTechnologyHSDPA,
             CTRadioAccessTechnologyWCDMA,
             CTRadioAccessTechnologyHSUPA,
             CTRadioAccessTechnologyCDMAEVDORev0,
             CTRadioAccessTechnologyCDMAEVDORevA,
             CTRadioAccessTechnologyCDMAEVDORevB,
             CTRadioAccessTechnologyeHRPD];
             
             NSArray *typeStrings4G = @[CTRadioAccessTechnologyLTE];
             */

相关文章

  • AFNetworking3.0网络状态监测<二>

    SystemConfiguration网络监测 网络状态监测使用SystemConfiguration这个API ...

  • IOS开发笔记-监测网络状态

    两种方法监测网络状态: AFNetworking中AFNetworkReachabilityManager监测网络...

  • 网络监测

    #import "Reachability.h" { [super viewDidLoad]; UIButton ...

  • 网络监测

    要获取当前网络状态(Wi-Fi、4G、3G) 每一项是什么意思不太清楚,但是有时候要用区分2G、3G、4G和wifi

  • 网络监测

    最近做的项目要网络监测,看能不能ping通下位机,可让我一顿好找。因为我用模拟器测试的,发现电脑用cmd可以pin...

  • iOS网络监测提醒(AFNet)

    网络监测 一首先导入 AFNetworkReachabilityManager.h 网络监测 二https://g...

  • 判断设备是否真正的连接互联网

    在iOS中监测网络状态有好几种方式,详情点击这里。但是在一般的网络监测都只是能够监测本地的网络状态,而真实的网络可...

  • linux网络相关命令

    linux网络相关命令分为:监测,传输,远端登录 命令包括: ping - 监测网络连通性 traceroute ...

  • iOS 网络监测

    项目中经常会遇到需要获取当前的网络状态,自己就简单的封装了一下。 基于AFNetworking的网络监测 1.im...

  • APP网络监测

    使用AFNetWorking 3.0监控网络 如果要检测网络状态的变化,必须用检测管理器的单例 startMoni...

网友评论

      本文标题:网络监测

      本文链接:https://www.haomeiwen.com/subject/lkacixtx.html