美文网首页
获取iPhone具体机型

获取iPhone具体机型

作者: 遥想月下 | 来源:发表于2016-09-08 14:56 被阅读327次

    参照网站https://www.theiphonewiki.com/wiki/Models
    根据设备型号获取具体对应的手机类型。

    这里只记录iPhone的相关代码,更新到iPhone7和iPhone7 Plus,需要引入头文件

    需要引入头文件#import <sys/utsname.h>
    具体代码如下:

    - (NSString*)deviceString
    {
        // 需要#import "sys/utsname.h"
        struct utsname systemInfo;
        uname(&systemInfo);
        NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
        NSLog(@"型号:%@", deviceString);
    
        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 @"iPhone 4";
        if ([deviceString isEqualToString:@"iPhone3,3"])    return @"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";
        if ([deviceString isEqualToString:@"iPhone8,4"])    return @"iPhone SE";
        if ([deviceString isEqualToString:@"iPhone9,1"])    return @"iPhone 7";
        if ([deviceString isEqualToString:@"iPhone9,3"])    return @"iPhone 7";
        if ([deviceString isEqualToString:@"iPhone9,2"])    return @"iPhone 7 Plus";
        if ([deviceString isEqualToString:@"iPhone9,4"])    return @"iPhone 7 Plus";
        if ([deviceString isEqualToString:@"iPhone10,1"])    return @"iPhone 8";
        if ([deviceString isEqualToString:@"iPhone10,4"])    return @"iPhone 8";
        if ([deviceString isEqualToString:@"iPhone10,2"])    return @"iPhone 8 Plus";
        if ([deviceString isEqualToString:@"iPhone10,5"])    return @"iPhone 8 Plus";
        if ([deviceString isEqualToString:@"iPhone10,3"])    return @"iPhone X";
        if ([deviceString isEqualToString:@"iPhone10,6"])    return @"iPhone X";
    
        if ([deviceString isEqualToString:@"iPod1,1"])      return @"iPod Touch 1G";
        if ([deviceString isEqualToString:@"iPod2,1"])      return @"iPod Touch 2G";
        if ([deviceString isEqualToString:@"iPod3,1"])      return @"iPod Touch 3G";
        if ([deviceString isEqualToString:@"iPod4,1"])      return @"iPod Touch 4G";
        if ([deviceString isEqualToString:@"iPad1,1"])      return @"iPad";
        if ([deviceString isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";
        if ([deviceString isEqualToString:@"iPad2,2"])      return @"iPad 2 (GSM)";
        if ([deviceString isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";
        if ([deviceString isEqualToString:@"i386"])         return @"Simulator";
        if ([deviceString isEqualToString:@"x86_64"])       return @"Simulator";
        NSLog(@"NOTE: Unknown device type: %@", deviceString);
        return deviceString;
    

    }

    相关文章

      网友评论

          本文标题:获取iPhone具体机型

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