美文网首页
iOS 获取手机具体型号(更新到iPhone 12 Pro Ma

iOS 获取手机具体型号(更新到iPhone 12 Pro Ma

作者: Sinda_Liu | 来源:发表于2021-06-09 11:07 被阅读0次

    我们在开发过程中会遇到获取iPhone的具体型号,目前更新至iPhone 12 Pro Max。后续苹果如果出新产品,可自行查阅官方文档https://www.theiphonewiki.com/wiki/Models,苹果的系列产品都会有具体说明。我这里只做了iPhone的判断,可针对自己的需求,自行添加。只需记下官方文档中设备型号以及设备对应的Identifier,加进下面的方法即可。

    #import <sys/utsname.h>//要导入头文件
    
    //获取设备型号方法
    + (NSString *)getCurrentDeviceModel{
        struct utsname systemInfo;
        uname(&systemInfo);
        
        NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];
        if ([deviceModel isEqualToString:@"iPhone3,1"])    return @"iPhone 4";
        if ([deviceModel isEqualToString:@"iPhone3,2"])    return @"iPhone 4";
        if ([deviceModel isEqualToString:@"iPhone3,3"])    return @"iPhone 4";
        if ([deviceModel isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";
        if ([deviceModel isEqualToString:@"iPhone5,1"])    return @"iPhone 5";
        if ([deviceModel isEqualToString:@"iPhone5,2"])    return @"iPhone 5 (GSM+CDMA)";
        if ([deviceModel isEqualToString:@"iPhone5,3"])    return @"iPhone 5c (GSM)";
        if ([deviceModel isEqualToString:@"iPhone5,4"])    return @"iPhone 5c (GSM+CDMA)";
        if ([deviceModel isEqualToString:@"iPhone6,1"])    return @"iPhone 5s (GSM)";
        if ([deviceModel isEqualToString:@"iPhone6,2"])    return @"iPhone 5s (GSM+CDMA)";
        if ([deviceModel isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";
        if ([deviceModel isEqualToString:@"iPhone7,2"])    return @"iPhone 6";
        if ([deviceModel isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";
        if ([deviceModel isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";
        if ([deviceModel isEqualToString:@"iPhone8,4"])    return @"iPhone SE";
        if ([deviceModel isEqualToString:@"iPhone9,1"])    return @"iPhone 7";
        if ([deviceModel isEqualToString:@"iPhone9,2"])    return @"iPhone 7 Plus";
        if ([deviceModel isEqualToString:@"iPhone9,3"])    return @"iPhone 7";
        if ([deviceModel isEqualToString:@"iPhone9,4"])    return @"iPhone 7 Plus";
        if ([deviceModel isEqualToString:@"iPhone10,1"])   return @"iPhone_8";
        if ([deviceModel isEqualToString:@"iPhone10,4"])   return @"iPhone_8";
        if ([deviceModel isEqualToString:@"iPhone10,2"])   return @"iPhone_8_Plus";
        if ([deviceModel isEqualToString:@"iPhone10,5"])   return @"iPhone_8_Plus";
        if ([deviceModel isEqualToString:@"iPhone10,3"])   return @"iPhone X";
        if ([deviceModel isEqualToString:@"iPhone10,6"])   return @"iPhone X";
        if ([deviceModel isEqualToString:@"iPhone11,8"])   return @"iPhone XR";
        if ([deviceModel isEqualToString:@"iPhone11,2"])   return @"iPhone XS";
        if ([deviceModel isEqualToString:@"iPhone11,6"])   return @"iPhone XS Max";
        if ([deviceModel isEqualToString:@"iPhone11,4"])   return @"iPhone XS Max";
        if ([deviceModel isEqualToString:@"iPhone12,1"])   return @"iPhone 11";
        if ([deviceModel isEqualToString:@"iPhone12,3"])   return @"iPhone 11 Pro";
        if ([deviceModel isEqualToString:@"iPhone12,5"])   return @"iPhone 11 Pro Max";
        if ([deviceModel isEqualToString:@"iPhone12,8"])   return @"iPhone SE2";
        if ([deviceModel isEqualToString:@"iPhone13,1"])   return @"iPhone 12 mini";
        if ([deviceModel isEqualToString:@"iPhone13,2"])   return @"iPhone 12";
        if ([deviceModel isEqualToString:@"iPhone13,3"])   return @"iPhone 12 Pro";
        if ([deviceModel isEqualToString:@"iPhone13,4"])   return @"iPhone 12 Pro Max";
       
        return deviceModel;
    }
    
    

    相关文章

      网友评论

          本文标题:iOS 获取手机具体型号(更新到iPhone 12 Pro Ma

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