美文网首页
ios获取手机型号、系统版本、设备唯一标识符、手机运营商等

ios获取手机型号、系统版本、设备唯一标识符、手机运营商等

作者: SunnyLeong | 来源:发表于2018-03-02 17:04 被阅读123次

    获取手机型号需要导入

    import "sys/utsname.h"

    获取运行商需要导入

    import <CoreTelephony/CTCarrier.h>

    import <CoreTelephony/CTTelephonyNetworkInfo.h>

    //设备唯一标识符  
        NSString *identifierStr = [[[UIDevice currentDevice] identifierForVendor] UUIDString];  
        NSLog(@"设备唯一标识符:%@",identifierStr);  
        //手机别名: 用户定义的名称  
        NSString* userPhoneName = [[UIDevice currentDevice] name];  
        NSLog(@"手机别名: %@", userPhoneName);  
        //设备名称  
        NSString* deviceName = [[UIDevice currentDevice] systemName];  
        NSLog(@"设备名称: %@",deviceName );  
        //手机系统版本  
        NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];  
        NSLog(@"手机系统版本: %@", phoneVersion);  
        //手机型号  
        NSString * phoneModel =  [self deviceVersion];  
        NSLog(@"手机型号:%@",phoneModel);  
        //地方型号  (国际化区域名称)  
        NSString* localPhoneModel = [[UIDevice currentDevice] localizedModel];  
        NSLog(@"国际化区域名称: %@",localPhoneModel );  
        NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];  
        // 当前应用软件版本  比如:1.0.1  
        NSString *appCurVersion = [infoDictionary objectForKey:@"CFBundleShortVersionString"];  
        NSLog(@"当前应用软件版本:%@",appCurVersion);  
        // 当前应用版本号码   int类型  
        NSString *appCurVersionNum = [infoDictionary objectForKey:@"CFBundleVersion"];  
        NSLog(@"当前应用版本号码:%@",appCurVersionNum);  
        CGRect rect = [[UIScreen mainScreen] bounds];  
        CGSize size = rect.size;  
        CGFloat width = size.width;  
        CGFloat height = size.height;  
        NSLog(@"物理尺寸:%.0f × %.0f",width,height);  
        CGFloat scale_screen = [UIScreen mainScreen].scale;  
        NSLog(@"分辨率是:%.0f × %.0f",width*scale_screen ,height*scale_screen);  
        CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];  
        CTCarrier *carrier = info.subscriberCellularProvider;  
        NSLog(@"运营商:%@", carrier.carrierName); 
    
    - (NSString*)deviceVersion  
    {  
        // 需要#import "sys/utsname.h"  
        struct utsname systemInfo;  
        uname(&systemInfo);  
        NSString * deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];  
        //iPhone  
        if ([deviceString isEqualToString:@"iPhone1,1"])    return @"iPhone 1G";  
        if ([deviceString isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";  
        if ([deviceString isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";  
        if ([deviceString isEqualToString:@"iPhone3,1"])    return @"iPhone 4";  
        if ([deviceString isEqualToString:@"iPhone3,2"])    return @"Verizon iPhone 4";  
        if ([deviceString isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";  
        if ([deviceString isEqualToString:@"iPhone5,1"])    return @"iPhone 5";  
        if ([deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";  
        if ([deviceString isEqualToString:@"iPhone5,3"])    return @"iPhone 5C";  
        if ([deviceString isEqualToString:@"iPhone5,4"])    return @"iPhone 5C";  
        if ([deviceString isEqualToString:@"iPhone6,1"])    return @"iPhone 5S";  
        if ([deviceString isEqualToString:@"iPhone6,2"])    return @"iPhone 5S";  
        if ([deviceString isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";  
        if ([deviceString isEqualToString:@"iPhone7,2"])    return @"iPhone 6";  
        if ([deviceString isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";  
        if ([deviceString isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";  
          
         return deviceString;  
    } 
    

    运行结果:

    2016-05-18 14:38:23.247 获取手机信息[36680:1515571] 设备唯一标识符:3DCF9688-6946-4C30-8B27-377A7910DCB0
    2016-05-18 14:38:23.248 获取手机信息[36680:1515571] 手机别名: iPhone Simulator
    2016-05-18 14:38:23.248 获取手机信息[36680:1515571] 设备名称: iPhone OS
    2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 手机系统版本: 9.3
    2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 手机型号:x86_64
    2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 国际化区域名称: iPhone
    2016-05-18 14:38:23.249 获取手机信息[36680:1515571] 当前应用软件版本:1.0
    2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 当前应用版本号码:1
    2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 物理尺寸:375 × 667
    2016-05-18 14:38:23.250 获取手机信息[36680:1515571] 分辨率是:750 × 1334
    2016-05-18 14:38:23.252 获取手机信息[36680:1515571] 运营商:(null) //真机显示运营商

    相关文章

      网友评论

          本文标题:ios获取手机型号、系统版本、设备唯一标识符、手机运营商等

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