iOS-iPhone 8、8 Plus和iPhone X的设备平台字符串/内部模型 [英] iOS - Device Platform String / Internal Model for iPhone 8, 8 Plus and iPhone X
本文介绍了iOS-iPhone 8、8 Plus和iPhone X的设备平台字符串/内部模型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
即将推出的iPhone 8,iPhone 8 Plus和iPhone X的设备平台字符串是什么?
What is the device platform string List for the upcoming iPhone 8, iPhone 8 Plus and iPhone X?
推荐答案
基于设备内部模型识别设备的列表如下:
The list to identify the devices based on their internal model is as follows:
- (NSString *) devicePlatformString{
NSString *platform = [self devicePlatform];
if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 2G";
if ([platform isEqualToString:@"iPhone1,2"]) return @"iPhone 3G";
if ([platform isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS";
if ([platform isEqualToString:@"iPhone3,1"]) return @"iPhone 4";
if ([platform isEqualToString:@"iPhone3,2"]) return @"iPhone 4";
if ([platform isEqualToString:@"iPhone3,3"]) return @"iPhone 4";
if ([platform isEqualToString:@"iPhone4,1"]) return @"iPhone 4S";
if ([platform isEqualToString:@"iPhone5,1"]) return @"iPhone 5";
if ([platform isEqualToString:@"iPhone5,2"]) return @"iPhone 5 (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c (GSM)";
if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s (GSM)";
if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s (GSM+CDMA)";
if ([platform isEqualToString:@"iPhone8,4"]) return @"iPhone SE";
if ([platform isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus";
if ([platform isEqualToString:@"iPhone7,2"]) return @"iPhone 6";
if ([platform isEqualToString:@"iPhone8,2"]) return @"iPhone 6s Plus";
if ([platform isEqualToString:@"iPhone8,1"]) return @"iPhone 6s";
if ([platform isEqualToString:@"iPhone9,1"]) return @"iPhone 7";
if ([platform isEqualToString:@"iPhone9,3"]) return @"iPhone 7";
if ([platform isEqualToString:@"iPhone9,2"]) return @"iPhone 7 Plus";
if ([platform isEqualToString:@"iPhone9,4"]) return @"iPhone 7 Plus";
if ([platform isEqualToString:@"iPhone10,1"]) return @"iPhone 8";
if ([platform isEqualToString:@"iPhone10,4"]) return @"iPhone 8";
if ([platform isEqualToString:@"iPhone10,2"]) return @"iPhone 8 Plus";
if ([platform isEqualToString:@"iPhone10,5"]) return @"iPhone 8 Plus";
if ([platform isEqualToString:@"iPhone10,3"]) return @"iPhone X";
if ([platform isEqualToString:@"iPhone10,6"]) return @"iPhone X";
if ([platform isEqualToString:@"iPhone11,8"]) return @"iPhone XR";
if ([platform isEqualToString:@"iPhone11,2"]) return @"iPhone XS";
if ([platform isEqualToString:@"iPhone11,4"]) return @"iPhone XS MAX";
if ([platform isEqualToString:@"iPhone11,6"]) return @"iPhone XS MAX";
if ([platform isEqualToString:@"iPod1,1"]) return @"iPod Touch (1 Gen)";
if ([platform isEqualToString:@"iPod2,1"]) return @"iPod Touch (2 Gen)";
if ([platform isEqualToString:@"iPod3,1"]) return @"iPod Touch (3 Gen)";
if ([platform isEqualToString:@"iPod4,1"]) return @"iPod Touch (4 Gen)";
if ([platform isEqualToString:@"iPod5,1"]) return @"iPod Touch (5 Gen)";
if ([platform isEqualToString:@"iPod7,1"]) return @"iPod Touch (6 Gen)";
if ([platform isEqualToString:@"iPad1,1"]) return @"iPad";
if ([platform isEqualToString:@"iPad1,2"]) return @"iPad 3G";
if ([platform isEqualToString:@"iPad2,1"]) return @"iPad 2 (WiFi)";
if ([platform isEqualToString:@"iPad2,2"]) return @"iPad 2";
if ([platform isEqualToString:@"iPad2,3"]) return @"iPad 2 (CDMA)";
if ([platform isEqualToString:@"iPad2,4"]) return @"iPad 2";
if ([platform isEqualToString:@"iPad2,5"]) return @"iPad Mini (WiFi)";
if ([platform isEqualToString:@"iPad2,6"]) return @"iPad Mini";
if ([platform isEqualToString:@"iPad2,7"]) return @"iPad Mini (GSM+CDMA)";
if ([platform isEqualToString:@"iPad3,1"]) return @"iPad 3 (WiFi)";
if ([platform isEqualToString:@"iPad3,2"]) return @"iPad 3 (GSM+CDMA)";
if ([platform isEqualToString:@"iPad3,3"]) return @"iPad 3";
if ([platform isEqualToString:@"iPad3,4"]) return @"iPad 4 (WiFi)";
if ([platform isEqualToString:@"iPad3,5"]) return @"iPad 4";
if ([platform isEqualToString:@"iPad3,6"]) return @"iPad 4 (GSM+CDMA)";
if ([platform isEqualToString:@"iPad4,1"]) return @"iPad Air (WiFi)";
if ([platform isEqualToString:@"iPad4,2"]) return @"iPad Air (Cellular)";
if ([platform isEqualToString:@"iPad4,4"]) return @"iPad Mini 2 (WiFi)";
if ([platform isEqualToString:@"iPad4,5"]) return @"iPad Mini 2 (Cellular)";
if ([platform isEqualToString:@"iPad4,6"]) return @"iPad Mini 2";
if ([platform isEqualToString:@"iPad4,7"]) return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad4,8"]) return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad4,9"]) return @"iPad Mini 3";
if ([platform isEqualToString:@"iPad5,1"]) return @"iPad Mini 4 (WiFi)";
if ([platform isEqualToString:@"iPad5,2"]) return @"iPad Mini 4 (LTE)";
if ([platform isEqualToString:@"iPad5,3"]) return @"iPad Air 2";
if ([platform isEqualToString:@"iPad5,4"]) return @"iPad Air 2";
if ([platform isEqualToString:@"iPad6,3"]) return @"iPad Pro 9.7";
if ([platform isEqualToString:@"iPad6,4"]) return @"iPad Pro 9.7";
if ([platform isEqualToString:@"iPad6,7"]) return @"iPad Pro 12.9";
if ([platform isEqualToString:@"iPad6,8"]) return @"iPad Pro 12.9";
if ([platform isEqualToString:@"iPad6,11"]) return @"iPad (5th Gen)";
if ([platform isEqualToString:@"iPad6,12"]) return @"iPad (5th Gen)";
if ([platform isEqualToString:@"iPad7,5"]) return @"iPad (6th Gen)";
if ([platform isEqualToString:@"iPad7,6"]) return @"iPad (6th Gen)";
if ([platform isEqualToString:@"iPad7,1"]) return @"iPad Pro 12.9 (2nd Gen)";
if ([platform isEqualToString:@"iPad7,2"]) return @"iPad Pro 12.9 (2nd Gen)";
if ([platform isEqualToString:@"iPad7,3"]) return @"iPad Pro 10.5";
if ([platform isEqualToString:@"iPad7,4"]) return @"iPad Pro 10.5";
if ([platform isEqualToString:@"AppleTV2,1"]) return @"Apple TV 2G";
if ([platform isEqualToString:@"AppleTV3,1"]) return @"Apple TV 3";
if ([platform isEqualToString:@"AppleTV3,2"]) return @"Apple TV 3 (2013)";
if ([platform isEqualToString:@"i386"]) return @"Simulator";
if ([platform isEqualToString:@"x86_64"]) return @"Simulator";
return platform;}
- (NSString *) devicePlatform{
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *machine = malloc(size);
sysctlbyname("hw.machine", machine, &size, NULL, 0);
NSString *platform = [NSString stringWithUTF8String:machine];
free(machine);
return platform;
}
在Swift中
func devicePlatform() -> String {
var size = 0
sysctlbyname("hw.machine", nil, &size, nil, 0)
var machine = [CChar](repeating: 0, count: size)
sysctlbyname("hw.machine", &machine, &size, nil, 0)
return String(cString: machine)
}
func devicePlatformString() -> String {
let platform: String = devicePlatform()
if (platform == "iPhone1,1") {
return "iPhone 2G"
}
if (platform == "iPhone1,2") {
return "iPhone 3G"
}
if (platform == "iPhone2,1") {
return "iPhone 3GS"
}
if (platform == "iPhone3,1") {
return "iPhone 4"
}
if (platform == "iPhone3,2") {
return "iPhone 4"
}
if (platform == "iPhone3,3") {
return "iPhone 4"
}
if (platform == "iPhone4,1") {
return "iPhone 4S"
}
if (platform == "iPhone5,1") {
return "iPhone 5"
}
if (platform == "iPhone5,2") {
return "iPhone 5 (GSM+CDMA)"
}
if (platform == "iPhone5,3") {
return "iPhone 5c (GSM)"
}
if (platform == "iPhone5,4") {
return "iPhone 5c (GSM+CDMA)"
}
if (platform == "iPhone6,1") {
return "iPhone 5s (GSM)"
}
if (platform == "iPhone6,2") {
return "iPhone 5s (GSM+CDMA)"
}
if (platform == "iPhone8,4") {
return "iPhone SE"
}
if (platform == "iPhone7,1") {
return "iPhone 6 Plus"
}
if (platform == "iPhone7,2") {
return "iPhone 6"
}
if (platform == "iPhone8,2") {
return "iPhone 6s Plus"
}
if (platform == "iPhone8,1") {
return "iPhone 6s"
}
if (platform == "iPhone9,1") {
return "iPhone 7"
}
if (platform == "iPhone9,3") {
return "iPhone 7"
}
if (platform == "iPhone9,2") {
return "iPhone 7 Plus"
}
if (platform == "iPhone9,4") {
return "iPhone 7 Plus"
}
if (platform == "iPhone10,1") {
return "iPhone 8"
}
if (platform == "iPhone10,4") {
return "iPhone 8"
}
if (platform == "iPhone10,2") {
return "iPhone 8 Plus"
}
if (platform == "iPhone10,5") {
return "iPhone 8 Plus"
}
if (platform == "iPhone10,3") {
return "iPhone X"
}
if (platform == "iPhone10,6") {
return "iPhone X"
}
if (platform == "iPhone11,8") {
return "iPhone XR"
}
if (platform == "iPhone11,2") {
return "iPhone XS"
}
if (platform == "iPhone11,4") {
return "iPhone XS MAX"
}
if (platform == "iPhone11,6") {
return "iPhone XS MAX"
}
if (platform == "iPod1,1") {
return "iPod Touch (1 Gen)"
}
if (platform == "iPod2,1") {
return "iPod Touch (2 Gen)"
}
if (platform == "iPod3,1") {
return "iPod Touch (3 Gen)"
}
if (platform == "iPod4,1") {
return "iPod Touch (4 Gen)"
}
if (platform == "iPod5,1") {
return "iPod Touch (5 Gen)"
}
if (platform == "iPod7,1") {
return "iPod Touch (6 Gen)"
}
if (platform == "iPad1,1") {
return "iPad"
}
if (platform == "iPad1,2") {
return "iPad 3G"
}
if (platform == "iPad2,1") {
return "iPad 2 (WiFi)"
}
if (platform == "iPad2,2") {
return "iPad 2"
}
if (platform == "iPad2,3") {
return "iPad 2 (CDMA)"
}
if (platform == "iPad2,4") {
return "iPad 2"
}
if (platform == "iPad2,5") {
return "iPad Mini (WiFi)"
}
if (platform == "iPad2,6") {
return "iPad Mini"
}
if (platform == "iPad2,7") {
return "iPad Mini (GSM+CDMA)"
}
if (platform == "iPad3,1") {
return "iPad 3 (WiFi)"
}
if (platform == "iPad3,2") {
return "iPad 3 (GSM+CDMA)"
}
if (platform == "iPad3,3") {
return "iPad 3"
}
if (platform == "iPad3,4") {
return "iPad 4 (WiFi)"
}
if (platform == "iPad3,5") {
return "iPad 4"
}
if (platform == "iPad3,6") {
return "iPad 4 (GSM+CDMA)"
}
if (platform == "iPad4,1") {
return "iPad Air (WiFi)"
}
if (platform == "iPad4,2") {
return "iPad Air (Cellular)"
}
if (platform == "iPad4,4") {
return "iPad Mini 2 (WiFi)"
}
if (platform == "iPad4,5") {
return "iPad Mini 2 (Cellular)"
}
if (platform == "iPad4,6") {
return "iPad Mini 2"
}
if (platform == "iPad4,7") {
return "iPad Mini 3"
}
if (platform == "iPad4,8") {
return "iPad Mini 3"
}
if (platform == "iPad4,9") {
return "iPad Mini 3"
}
if (platform == "iPad5,1") {
return "iPad Mini 4 (WiFi)"
}
if (platform == "iPad5,2") {
return "iPad Mini 4 (LTE)"
}
if (platform == "iPad5,3") {
return "iPad Air 2"
}
if (platform == "iPad5,4") {
return "iPad Air 2"
}
if (platform == "iPad6,3") {
return "iPad Pro 9.7"
}
if (platform == "iPad6,4") {
return "iPad Pro 9.7"
}
if (platform == "iPad6,7") {
return "iPad Pro 12.9"
}
if (platform == "iPad6,8") {
return "iPad Pro 12.9"
}
if (platform == "iPad6,11") {
return "iPad (5th Gen)"
}
if (platform == "iPad6,12") {
return "iPad (5th Gen)"
}
if (platform == "iPad7,5") {
return "iPad (6th Gen)"
}
if (platform == "iPad7,6") {
return "iPad (6th Gen)"
}
if (platform == "iPad7,1") {
return "iPad Pro 12.9 (2nd Gen)"
}
if (platform == "iPad7,2") {
return "iPad Pro 12.9 (2nd Gen)"
}
if (platform == "iPad7,3") {
return "iPad Pro 10.5"
}
if (platform == "iPad7,4") {
return "iPad Pro 10.5"
}
if (platform == "AppleTV2,1") {
return "Apple TV 2G"
}
if (platform == "AppleTV3,1") {
return "Apple TV 3"
}
if (platform == "AppleTV3,2") {
return "Apple TV 3 (2013)"
}
if (platform == "i386") {
return "Simulator"
}
if (platform == "x86_64") {
return "Simulator"
}
return platform
}
来源: https://www.theiphonewiki.com/wiki/List_of_iPhones https://www.theiphonewiki.com/wiki/Models
这篇关于iOS-iPhone 8、8 Plus和iPhone X的设备平台字符串/内部模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文