zoukankan      html  css  js  c++  java
  • iOS获取运营商的相关信息

    1.导入:CoreTelephony.framework

    2.添加头文件

    #import <CoreTelephony/CTTelephonyNetworkInfo.h>  
    #import <CoreTelephony/CTCarrier.h>  

    3.获取网络环境

        -(void)networktype{  
            NSArray *subviews = [[[[UIApplication sharedApplication] valueForKey:@"statusBar"] valueForKey:@"foregroundView"]subviews];  
            NSNumber *dataNetworkItemView = nil;  
              
            for (id subview in subviews) {  
                if([subview isKindOfClass:[NSClassFromString(@"UIStatusBarDataNetworkItemView") class]]) {  
                    dataNetworkItemView = subview;  
                    break;  
                }  
            }  
              
            switch ([[dataNetworkItemView valueForKey:@"dataNetworkType"]integerValue]) {  
                case 0:  
                    NSLog(@"No wifi or cellular");  
                    infoLabel.text=@"无服务";  
                    break;  
                      
                case 1:  
                    NSLog(@"2G");  
                    infoLabel.text=@"2G";  
                    break;  
                      
                case 2:  
                    NSLog(@"3G");  
                    infoLabel.text=@"3G";  
                    break;  
                      
                case 3:  
                    NSLog(@"4G");  
                    infoLabel.text=@"4G";  
                    break;  
                      
                case 4:  
                    NSLog(@"LTE");  
                    infoLabel.text=@"LTE";  
                    break;  
                      
                case 5:  
                    NSLog(@"Wifi");  
                    infoLabel.text=@"Wifi";  
                    break;  
                      
                      
                default:  
                    break;  
            }}  

    4.获取运营商信息

    + (BOOL)isInChina{
        
        CTTelephonyNetworkInfo *telephonyInfo = [[CTTelephonyNetworkInfo alloc] init];
        CTCarrier *carrier = [telephonyInfo subscriberCellularProvider];
        //NSString *currentCountry = [carrier carrierName];
        NSLog(@"[carrier carrierName]==%@,[carrier mobileCountryCode]==%@,[carrier mobileNetworkCode]==%@,[carrier isoCountryCode]==%@,[carrier allowsVOIP]==%d",[carrier carrierName],[carrier mobileCountryCode],[carrier mobileNetworkCode],[carrier isoCountryCode],[carrier allowsVOIP]);
        
        if ([[carrier mobileCountryCode] isEqualToString:@"460"]) {
            return YES;
        }else{
            return NO;
        }
        
    }

    获取运营商的截图:

  • 相关阅读:
    [MySQL优化案例]系列 — 分页优化
    [MySQL优化案例]系列 — RAND()优化
    CSS模块化思想-----命名是个技术活
    php curl选项列表(超详细)
    CURL使用介绍
    HTTP头信息
    git常用命令
    Git .gitignore文件说明
    yield(),wait(),sleep(),join()
    Java对象序列化和返序列化
  • 原文地址:https://www.cnblogs.com/wobuyayi/p/5674389.html
Copyright © 2011-2022 走看看