判断iOS设备型号

来源:互联网 发布:狼人杀抿身份数据 编辑:程序博客网 时间:2024/05/16 01:31
+ (NSString*)getMachine{    size_t size;    sysctlbyname("hw.machine", NULL, &size, NULL, 0);    char *name = malloc(size);    sysctlbyname("hw.machine", name, &size, NULL, 0);        NSString *machine = [NSString stringWithCString:name encoding:NSUTF8StringEncoding];        free(name);    if( [machine isEqualToString:@"i386"] || [machine isEqualToString:@"x86_64"] ) machine = @"ios_Simulator";    else if( [machine isEqualToString:@"iPhone1,1"] ) machine = @"iPhone_1G";    else if( [machine isEqualToString:@"iPhone1,2"] ) machine = @"iPhone_3G";    else if( [machine isEqualToString:@"iPhone2,1"] ) machine = @"iPhone_3GS";    else if( [machine isEqualToString:@"iPhone3,1"] ) machine = @"iPhone_4";    else if( [machine isEqualToString:@"iPod1,1"] ) machine = @"iPod_Touch_1G";    else if( [machine isEqualToString:@"iPod2,1"] ) machine = @"iPod_Touch_2G";    else if( [machine isEqualToString:@"iPod3,1"] ) machine = @"iPod_Touch_3G";    else if( [machine isEqualToString:@"iPod4,1"] ) machine = @"iPod_Touch_4G";    else if( [machine isEqualToString:@"iPad1,1"] ) machine = @"iPad_1";    else if( [machine isEqualToString:@"iPad2,1"] ) machine = @"iPad_2";        return machine;}


struct utsname systemInfo;uname(&systemInfo);NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];

通过,如上方式即可获取到设备的型号信息,具体对应关系如下,截止2013,2,5。

  iphone 5,1   iphone5(移动,联通)
  iphone 5,2   iphone5(移动,电信,联通)
  iphone 4,1     iphone4S
  iphone 3,1     iphone4(移动,联通)
  iphone 3,2     iphone4(联通)
  iphone 3,3     iphone4(电信)
  iphone 2,1       iphone3GS
  iphone 1,2     iphone3G
  iphone 1,1     iphone
  ipad 1,1     ipad 1
  ipad 2,1     ipad 2(Wifi)
  ipad 2,2     ipad 2(GSM)
  ipad 2,3     ipad 2(CDMA)
  ipad 2,4     ipad 2(32nm)
  ipad 2,5     ipad mini(Wifi)
  ipad 2,6     ipad mini(GSM)
  ipad 2,7     ipad mini(CDMA)
  ipad 3,1     ipad 3(Wifi)
  ipad 3,2     ipad 3(CDMA)
  ipad 3,3     ipad 3(4G)
  ipad 3,4     ipad 4(Wifi)
  ipad 3,5     ipad 4(4G)
  ipad 3,6     ipad 4(CDMA)
  ipod 5,1     ipod touch 5
  ipod 4,1     ipod touch 4
  ipod 3,1     ipod touch 3
  ipod 2,1     ipod touch 2
  ipod 1,1     ipod touch


0 0