ios 中获取设备信息

      -(void)getDeviceNetInfo{
//监听移动服务提供商的变化,如开机状态,更换SIM卡
//设备唯一标识符
NSString *identifierStr = [[[UIDevice currentDevice] identifierForVendor]UUIDString];
NSLog(@"设备唯一标识符--%@",identifierStr);
//手机别名,用户定义的名称
NSString *userPhoneName = [[UIDevice currentDevice]name];
NSLog(@"手机别名--%@",userPhoneName);
//设备名称-
NSString *deviceName = [[UIDevice currentDevice]systemName];
NSLog(@"deviceName--%@",deviceName);
//手机系统版本号
NSString *phoneVersion = [[UIDevice currentDevice]systemVersion];
NSLog(@"手机系统版本号--%@",phoneVersion);
NSString *model = [[UIDevice currentDevice]model];
        //利用该方法只能获取到是iPhone还是ipad不能准确获取到当前设备的具体信息,所以需要使用[self deviceVersion];方法获取到准确的设备信息
NSLog(@"model---%@",model);
//手机型号
NSString *phoeModel = [self deviceVersion];
NSLog(@"phoeModel---%@",phoeModel);

NSLog(@"手机型号--%@",phoeModel);
//地方型号(国际化区域名称)
NSString *localPhoneModel = [[UIDevice currentDevice]localizedModel];
NSLog(@"国际化区域名称--%@",localPhoneModel);
//获取当前应用的版本号
NSDictionary  * infoDictionary = [[NSBundle mainBundle]infoDictionary];
NSString *appCurentVersion = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
NSLog(@"当期应用的版本号--%@",appCurentVersion);

// 当前应用版本号码   int类型
NSString *appCurVersionNum = [infoDictionary objectForKey:@"CFBundleVersion"];
NSLog(@"当前应用版本号--%@",appCurVersionNum);

CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = info.subscriberCellularProvider;
NSLog(@"运营商:%@", carrier.carrierName);

NSString *netStr =  [self getDeviceModel];
NSLog(@"netStr--%@",netStr);
      }                
        
    -(NSString *)deviceVersion{

CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [info subscriberCellularProvider];
//运营商名称
NSString *mCarrier = [NSString stringWithFormat:@"%@",[carrier carrierName]];
//运营商网络类型
NSString *mConnectType = [[NSString alloc] initWithFormat:@"%@",info.currentRadioAccessTechnology];

NSMutableString *allNetInfoString = [NSMutableString string];

if (mCarrier && mCarrier.length) {
    [allNetInfoString appendString:mCarrier];
}

if([AFNetworkReachabilityManager sharedManager].reachableViaWWAN)
{
    //NSLog(@"wwlan");
    
    if ([mConnectType isEqualToString:CTRadioAccessTechnologyGPRS]) {
        [allNetInfoString appendString:@" GRPG"];
        
    }else if ([mConnectType isEqualToString:CTRadioAccessTechnologyEdge]) {
        [allNetInfoString appendString:@" 2G"];
        
    }else if ([mConnectType isEqualToString:CTRadioAccessTechnologyWCDMA] || [mConnectType isEqualToString:CTRadioAccessTechnologyHSDPA] || [mConnectType isEqualToString:CTRadioAccessTechnologyHSUPA] || [mConnectType isEqualToString:CTRadioAccessTechnologyCDMA1x] || [mConnectType isEqualToString:CTRadioAccessTechnologyCDMAEVDORev0] || [mConnectType isEqualToString:CTRadioAccessTechnologyCDMAEVDORevA] || [mConnectType isEqualToString:CTRadioAccessTechnologyCDMAEVDORevB] || [mConnectType isEqualToString:CTRadioAccessTechnologyeHRPD]) {
        [allNetInfoString appendString:@" 3G"];
        
    }else if ([mConnectType isEqualToString:CTRadioAccessTechnologyLTE])
    {
        [allNetInfoString appendString:@" 4G"];
        
    }
    
    
}else if([AFNetworkReachabilityManager sharedManager].reachableViaWiFi)
{
    //NSLog(@"wifi");
    
    [allNetInfoString appendString:@" WiFi"];
    
}

/*   信息参照表
 CTRadioAccessTechnologyGPRS         //介于2G和3G之间,也叫2.5G ,过度技术
 CTRadioAccessTechnologyEdge         //EDGE为GPRS到第三代移动通信的过渡,EDGE俗称2.75G
 CTRadioAccessTechnologyWCDMA
 CTRadioAccessTechnologyHSDPA            //亦称为3.5G(3?G)
 CTRadioAccessTechnologyHSUPA            //3G到4G的过度技术
 CTRadioAccessTechnologyCDMA1x       //3G
 CTRadioAccessTechnologyCDMAEVDORev0    //3G标准
 CTRadioAccessTechnologyCDMAEVDORevA
 CTRadioAccessTechnologyCDMAEVDORevB
 CTRadioAccessTechnologyeHRPD        //电信使用的一种3G到4G的演进技术, 3.75G
 CTRadioAccessTechnologyLTE          //接近4G
 
 */

return allNetInfoString;


                                                                                                                              }                                                                                                                                                  //获取设备型号
                                                                                                                                                          - (NSString *)getDeviceModel
                                                                                                                                          {
struct utsname systemInfo;
uname(&systemInfo);
NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
NSLog(@"deviceString--%@",deviceString);
                                                                                                                        NSArray *modelArray = @[
                        
                        @"i386", @"x86_64",
                        
                        @"iPhone1,1",
                        @"iPhone1,2",
                        @"iPhone2,1",
                        @"iPhone3,1",
                        @"iPhone3,2",
                        @"iPhone3,3",
                        @"iPhone4,1",
                        @"iPhone5,1",
                        @"iPhone5,2",
                        @"iPhone5,3",
                        @"iPhone5,4",
                        @"iPhone6,1",
                        @"iPhone6,2",
                        @"iPhone7,2",
                        @"iPhone7,1",
                        @"iPhone8,1",
                        @"iPhone8,2",
                        @"iPhone9,1",
                        @"iPhone9,2",
                        
                        @"iPod1,1",
                        @"iPod2,1",
                        @"iPod3,1",
                        @"iPod4,1",
                        @"iPod5,1",
                        
                        @"iPad1,1",
                        @"iPad2,1",
                        @"iPad2,2",
                        @"iPad2,3",
                        @"iPad2,4",
                        @"iPad3,1",
                        @"iPad3,2",
                        @"iPad3,3",
                        @"iPad3,4",
                        @"iPad3,5",
                        @"iPad3,6",
                        
                        @"iPad2,5",
                        @"iPad2,6",
                        @"iPad2,7",
                        ];
NSArray *modelNameArray = @[
                            
                            @"iPhone Simulator",
                            @"iPhone Simulator",
                            @"iPhone 2G",
                            @"iPhone 3G",
                            @"iPhone 3GS",
                            @"iPhone 4(GSM)",
                            @"iPhone 4(GSM Rev A)",
                            @"iPhone 4(CDMA)",
                            @"iPhone 4S",
                            @"iPhone 5(GSM)",
                            @"iPhone 5(GSM+CDMA)",
                            @"iPhone 5c(GSM)",
                            @"iPhone 5c(Global)",
                            @"iphone 5s(GSM)",
                            @"iphone 5s(Global)",
                            @"iPhone 6",
                            @"iPhone 6 Plus",
                            @"iPhone 6s",
                            @"iPhone 6s Plus",
                            @"iPhone 7",
                            @"iPhone 7 Plus",
                            
                            @"iPod Touch 1G",
                            @"iPod Touch 2G",
                            @"iPod Touch 3G",
                            @"iPod Touch 4G",
                            @"iPod Touch 5G",
                            
                            @"iPad",
                            @"iPad 2(WiFi)",
                            @"iPad 2(GSM)",
                            @"iPad 2(CDMA)",
                            @"iPad 2(WiFi + New Chip)",
                            @"iPad 3(WiFi)",
                            @"iPad 3(GSM+CDMA)",
                            @"iPad 3(GSM)",
                            @"iPad 4(WiFi)",
                            @"iPad 4(GSM)",
                            @"iPad 4(GSM+CDMA)",
                            
                            @"iPad mini (WiFi)",
                            @"iPad mini (GSM)",
                            @"ipad mini (GSM+CDMA)",
                            
                            @"iPad mini2 (WiFi)",
                            @"iPad mini2 (GSM)",
                            @"ipad mini2 (GSM+CDMA)",
                            
                            @"iPad mini3 (WiFi)",
                            @"iPad mini3 (GSM)",
                            @"ipad mini3 (GSM+CDMA)"
                            
                            ];
        NSInteger modelIndex = - 1;
        NSString *modelNameString = nil;
        modelIndex = [modelArray indexOfObject:deviceString];
      if (modelIndex >= 0 && modelIndex < [modelNameArray count])         {
    modelNameString = [modelNameArray             objectAtIndex:modelIndex];
                  }
                        return modelNameString;
                                                                                                                            }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容