检测当前iOS设备类型方法

由于iOS设备分类众多,功能也有所差异。

大盖分为:

不能打电话,只可以通过wifi上网的iPod,

不能打电话,可以通过wifi上网,部分可以支持3g/4g上网的iPad

以及功能最强大的iPhone。当然iPhone也分为512内存单核,512内存双核 以及1G内存的多种设备类型。

因此有时候需要对一些设备进行分类优化,以下代码为iOS设备分类区别代码.


  1. - (NSString *) platformString{  
  1. size_t size;    
  2. sysctlbyname("hw.machine"NULL, &size, NULL0);    
  3. charchar *machine = malloc(size);    
  4. sysctlbyname("hw.machine", machine, &size, NULL0);    
  5. NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];    
  6. free(machine);   
  7. if ([platform isEqualToString:@"iPhone1,1"])    return @"iPhone 2G";  
  8. if ([platform isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";  
  9. if ([platform isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";  
  10. if ([platform isEqualToString:@"iPhone3,1"])    return @"iPhone 4";  
  11. if ([platform isEqualToString:@"iPhone3,2"])    return @"iPhone 4";  
  12. if ([platform isEqualToString:@"iPhone3,3"])    return @"iPhone 4 (CDMA)";      
  13. if ([platform isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";  
  14. if ([platform isEqualToString:@"iPhone5,1"])    return @"iPhone 5";  
  15. if ([platform isEqualToString:@"iPhone5,2"])    return @"iPhone 5 (GSM+CDMA)";  
  16.   
  17. if ([platform isEqualToString:@"iPod1,1"])      return @"iPod Touch (1 Gen)";  
  18. if ([platform isEqualToString:@"iPod2,1"])      return @"iPod Touch (2 Gen)";  
  19. if ([platform isEqualToString:@"iPod3,1"])      return @"iPod Touch (3 Gen)";  
  20. if ([platform isEqualToString:@"iPod4,1"])      return @"iPod Touch (4 Gen)";  
  21. if ([platform isEqualToString:@"iPod5,1"])      return @"iPod Touch (5 Gen)";  
  22.   
  23. if ([platform isEqualToString:@"iPad1,1"])      return @"iPad";  
  24. if ([platform isEqualToString:@"iPad1,2"])      return @"iPad 3G";  
  25. if ([platform isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";  
  26. if ([platform isEqualToString:@"iPad2,2"])      return @"iPad 2";  
  27. if ([platform isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";  
  28. if ([platform isEqualToString:@"iPad2,4"])      return @"iPad 2";  
  29. if ([platform isEqualToString:@"iPad2,5"])      return @"iPad Mini (WiFi)";  
  30. if ([platform isEqualToString:@"iPad2,6"])      return @"iPad Mini"(WCDMA);  
  31. if ([platform isEqualToString:@"iPad2,7"])      return @"iPad Mini (GSM+CDMA)";  
  32. if ([platform isEqualToString:@"iPad3,1"])      return @"iPad 3 (WiFi)";  
  33. if ([platform isEqualToString:@"iPad3,2"])      return @"iPad 3 (GSM+CDMA)";  
  34. if ([platform isEqualToString:@"iPad3,3"])      return @"iPad 3";  
  35. if ([platform isEqualToString:@"iPad3,4"])      return @"iPad 4 (WiFi)";  
  36. if ([platform isEqualToString:@"iPad3,5"])      return @"iPad 4";  
  37. if ([platform isEqualToString:@"iPad3,6"])      return @"iPad 4 (GSM+CDMA)";  
  38.   
  39. if ([platform isEqualToString:@"i386"])         return @"Simulator";  
  40. if ([platform isEqualToString:@"x86_64"])       return @"Simulator";  
  1. return platform;  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值