您的位置:首页 > 移动开发 > IOS开发

(转)获取iOS设备型号(最新iPhone6+、iPad4)

2015-02-02 15:10 417 查看
http://www.oschina.net/code/snippet_2247606_39106

//获得设备型号
+ (
NSString
*)getCurrentDeviceModel:(
UIViewController
*)controller
{
int
mib[2];
size_t
len;
char
*machine;
 
mib[0] = CTL_HW;
mib[1] = HW_MACHINE;
sysctl(mib, 2,
NULL
, &len,
NULL
, 0);
machine =
malloc
(len);
sysctl(mib, 2,machine, &len,
NULL
, 0);
 
NSString
*platform = [
NSString
stringWithCString:machine encoding:
NSASCIIStringEncoding
];
free
(machine);
 
if
([platform isEqualToString:@
"iPhone1,1"
])
return
@
"iPhone 2G (A1203)"
;
if
([platform isEqualToString:@
"iPhone1,2"
])
return
@
"iPhone 3G (A1241/A1324)"
;
if
([platform isEqualToString:@
"iPhone2,1"
])
return
@
"iPhone 3GS (A1303/A1325)"
;
if
([platform isEqualToString:@
"iPhone3,1"
])
return
@
"iPhone 4 (A1332)"
;
if
([platform isEqualToString:@
"iPhone3,2"
])
return
@
"iPhone 4 (A1332)"
;
if
([platform isEqualToString:@
"iPhone3,3"
])
return
@
"iPhone 4 (A1349)"
;
if
([platform isEqualToString:@
"iPhone4,1"
])
return
@
"iPhone 4S (A1387/A1431)"
;
if
([platform isEqualToString:@
"iPhone5,1"
])
return
@
"iPhone 5 (A1428)"
;
if
([platform isEqualToString:@
"iPhone5,2"
])
return
@
"iPhone 5 (A1429/A1442)"
;
if
([platform isEqualToString:@
"iPhone5,3"
])
return
@
"iPhone 5c (A1456/A1532)"
;
if
([platform isEqualToString:@
"iPhone5,4"
])
return
@
"iPhone 5c (A1507/A1516/A1526/A1529)"
;
if
([platform isEqualToString:@
"iPhone6,1"
])
return
@
"iPhone 5s (A1453/A1533)"
;
if
([platform isEqualToString:@
"iPhone6,2"
])
return
@
"iPhone 5s (A1457/A1518/A1528/A1530)"
;
if
([platform isEqualToString:@
"iPhone7,1"
])
return
@
"iPhone 6 Plus (A1522/A1524)"
;
if
([platform isEqualToString:@
"iPhone7,2"
])
return
@
"iPhone 6 (A1549/A1586)"
;
 
if
([platform isEqualToString:@
"iPod1,1"
])
return
@
"iPod Touch 1G (A1213)"
;
if
([platform isEqualToString:@
"iPod2,1"
])
return
@
"iPod Touch 2G (A1288)"
;
if
([platform isEqualToString:@
"iPod3,1"
])
return
@
"iPod Touch 3G (A1318)"
;
if
([platform isEqualToString:@
"iPod4,1"
])
return
@
"iPod Touch 4G (A1367)"
;
if
([platform isEqualToString:@
"iPod5,1"
])
return
@
"iPod Touch 5G (A1421/A1509)"
;
 
if
([platform isEqualToString:@
"iPad1,1"
])
return
@
"iPad 1G (A1219/A1337)"
;
 
if
([platform isEqualToString:@
"iPad2,1"
])
return
@
"iPad 2 (A1395)"
;
if
([platform isEqualToString:@
"iPad2,2"
])
return
@
"iPad 2 (A1396)"
;
if
([platform isEqualToString:@
"iPad2,3"
])
return
@
"iPad 2 (A1397)"
;
if
([platform isEqualToString:@
"iPad2,4"
])
return
@
"iPad 2 (A1395+New Chip)"
;
if
([platform isEqualToString:@
"iPad2,5"
])
return
@
"iPad Mini 1G (A1432)"
;
if
([platform isEqualToString:@
"iPad2,6"
])
return
@
"iPad Mini 1G (A1454)"
;
if
([platform isEqualToString:@
"iPad2,7"
])
return
@
"iPad Mini 1G (A1455)"
;
 
if
([platform isEqualToString:@
"iPad3,1"
])
return
@
"iPad 3 (A1416)"
;
if
([platform isEqualToString:@
"iPad3,2"
])
return
@
"iPad 3 (A1403)"
;
if
([platform isEqualToString:@
"iPad3,3"
])
return
@
"iPad 3 (A1430)"
;
if
([platform isEqualToString:@
"iPad3,4"
])
return
@
"iPad 4 (A1458)"
;
if
([platform isEqualToString:@
"iPad3,5"
])
return
@
"iPad 4 (A1459)"
;
if
([platform isEqualToString:@
"iPad3,6"
])
return
@
"iPad 4 (A1460)"
;
 
if
([platform isEqualToString:@
"iPad4,1"
])
return
@
"iPad Air (A1474)"
;
if
([platform isEqualToString:@
"iPad4,2"
])
return
@
"iPad Air (A1475)"
;
if
([platform isEqualToString:@
"iPad4,3"
])
return
@
"iPad Air (A1476)"
;
if
([platform isEqualToString:@
"iPad4,4"
])
return
@
"iPad Mini 2G (A1489)"
;
if
([platform isEqualToString:@
"iPad4,5"
])
return
@
"iPad Mini 2G (A1490)"
;
if
([platform isEqualToString:@
"iPad4,6"
])
return
@
"iPad Mini 2G (A1491)"
;
 
if
([platform isEqualToString:@
"i386"
])
return
@
"iPhone Simulator"
;
if
([platform isEqualToString:@
"x86_64"
])
return
@
"iPhone Simulator"
;
return
platform;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: