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

判断ios设备

2016-07-13 20:20 316 查看
1.使用UI_USER_INTERFACE_IDIOM()

区分目前UI_USER_INTERFACE_IDIOM()有2个返回值

UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad

UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone

2.使用UIDevice

NSString *deviceType = [UIDevice currentDevice].model;

if([deviceType isEqualToString:@”iPhone”]) {

//iPhone

}else if([deviceType isEqualToString:@”iPod touch”]) {

//iPod Touch

}else {

//iPad

}

3.使用系统的一个函数sysctlbyname 来获取设备名称

- (NSString *) platformString

{

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);

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:@”iPhone8,1”]) return @”iPhone 6s (A1522/A1524)”;

if ([platform isEqualToString:@”iPhone8,2”]) return @”iPhone 6s Plus (A1549/A1586)”;

if ([platform isEqualToString:@”iPod1,1”]) return @”iPod Touch 1G”;

if ([platform isEqualToString:@”iPod2,1”]) return @”iPod Touch 2G”;

if ([platform isEqualToString:@”iPod3,1”]) return @”iPod Touch 3G”;

if ([platform isEqualToString:@”iPod4,1”]) return @”iPod Touch 4G”;

if ([platform isEqualToString:@”iPad1,1”]) return @”iPad”;

if ([platform isEqualToString:@”iPad2,1”]) return @”iPad 2 (WiFi)”;

if ([platform isEqualToString:@”iPad2,2”]) return @”iPad 2 (GSM)”;

if ([platform isEqualToString:@”iPad2,3”]) return @”iPad 2 (CDMA)”;

if ([platform isEqualToString:@”i386”]) return @”Simulator”;

return @”“;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios设备