+ (NSString*)deviceString
{
// 需要#import "sys/utsname.h"
struct utsname systemInfo;
uname(&systemInfo);
NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; if ([deviceString isEqualToString:@"iPhone1,1"]) return @"iPhone 2G (A1203)";
if ([deviceString isEqualToString:@"iPhone1,2"]) return @"iPhone 3G (A1241/A1324)";
if ([deviceString isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS (A1303/A1325)";
if ([deviceString isEqualToString:@"iPhone3,1"]) return @"iPhone 4 (A1332)";
if ([deviceString isEqualToString:@"iPhone3,2"]) return @"iPhone 4 (A1332)";
if ([deviceString isEqualToString:@"iPhone3,3"]) return @"iPhone 4 (A1349)";
if ([deviceString isEqualToString:@"iPhone4,1"]) return @"iPhone 4S (A1387/A1431)";
if ([deviceString isEqualToString:@"iPhone5,1"]) return @"iPhone 5 (A1428)";
if ([deviceString isEqualToString:@"iPhone5,2"]) return @"iPhone 5 (A1429/A1442)";
if ([deviceString isEqualToString:@"iPhone5,3"]) return @"iPhone 5c (A1456/A1532)";
if ([deviceString isEqualToString:@"iPhone5,4"]) return @"iPhone 5c (A1507/A1516/A1526/A1529)";
if ([deviceString isEqualToString:@"iPhone6,1"]) return @"iPhone 5s (A1453/A1533)";
if ([deviceString isEqualToString:@"iPhone6,2"]) return @"iPhone 5s (A1457/A1518/A1528/A1530)";
if ([deviceString isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus (A1522/A1524)";
if ([deviceString isEqualToString:@"iPhone7,2"]) return @"iPhone 6 (A1549/A1586)";
if ([deviceString isEqualToString:@"iPhone8,1"]) return @"iPhone 6S";
if ([deviceString isEqualToString:@"iPhone8,2"]) return @"iPhone 6S Plus"; if ([deviceString isEqualToString:@"iPhone8,4"]) return @"iPhone SE"; if ([deviceString isEqualToString:@"iPhone9,1"]) return @"iPhone 7"; if ([deviceString isEqualToString:@"iPhone9,2"]) return @"iPhone 7 Plus"; if ([deviceString isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G (A1213)";
if ([deviceString isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G (A1288)";
if ([deviceString isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G (A1318)";
if ([deviceString isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G (A1367)";
if ([deviceString isEqualToString:@"iPod5,1"]) return @"iPod Touch 5G (A1421/A1509)"; if ([deviceString isEqualToString:@"iPad1,1"]) return @"iPad 1G (A1219/A1337)"; if ([deviceString isEqualToString:@"iPad2,1"]) return @"iPad 2 (A1395)";
if ([deviceString isEqualToString:@"iPad2,2"]) return @"iPad 2 (A1396)";
if ([deviceString isEqualToString:@"iPad2,3"]) return @"iPad 2 (A1397)";
if ([deviceString isEqualToString:@"iPad2,4"]) return @"iPad 2 (A1395+New Chip)";
if ([deviceString isEqualToString:@"iPad2,5"]) return @"iPad Mini 1G (A1432)";
if ([deviceString isEqualToString:@"iPad2,6"]) return @"iPad Mini 1G (A1454)";
if ([deviceString isEqualToString:@"iPad2,7"]) return @"iPad Mini 1G (A1455)"; if ([deviceString isEqualToString:@"iPad3,1"]) return @"iPad 3 (A1416)";
if ([deviceString isEqualToString:@"iPad3,2"]) return @"iPad 3 (A1403)";
if ([deviceString isEqualToString:@"iPad3,3"]) return @"iPad 3 (A1430)";
if ([deviceString isEqualToString:@"iPad3,4"]) return @"iPad 4 (A1458)";
if ([deviceString isEqualToString:@"iPad3,5"]) return @"iPad 4 (A1459)";
if ([deviceString isEqualToString:@"iPad3,6"]) return @"iPad 4 (A1460)"; if ([deviceString isEqualToString:@"iPad4,1"]) return @"iPad Air (A1474)";
if ([deviceString isEqualToString:@"iPad4,2"]) return @"iPad Air (A1475)";
if ([deviceString isEqualToString:@"iPad4,3"]) return @"iPad Air (A1476)";
if ([deviceString isEqualToString:@"iPad4,4"]) return @"iPad Mini 2G (A1489)";
if ([deviceString isEqualToString:@"iPad4,5"]) return @"iPad Mini 2G (A1490)";
if ([deviceString isEqualToString:@"iPad4,6"]) return @"iPad Mini 2G (A1491)"; if ([deviceString isEqualToString:@"i386"]) return @"iPhone Simulator";
if ([deviceString isEqualToString:@"x86_64"]) return @"iPhone Simulator";
return deviceString;
}

  

iOS 判断设备型号的更多相关文章

  1. iOS获取设备型号、装置类型等信息

    iOS获取设备型号.设备类型等信息 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然而他们都陆陆续续倒在了苹果的门下.苹果目前提供了2个方法供App获取设 ...

  2. iOS获取设备型号和App版本号等信息(OC+Swift)

    iOS获取设备型号和App版本号等信息(OC+Swift) 字数1687 阅读382 评论3 喜欢10 好久没有写过博客了,因为中间工作比较忙,然后有些个人事情所以耽误了.但是之前写的博客还一直有人来 ...

  3. IOS判断设备是否已越狱

    转自:http://www.cnblogs.com/supercheng/archive/2012/12/05/2804166.html - (BOOL)isJailbroken { BOOL jai ...

  4. iOS获取设备型号

    导入头文件 #include <sys/types.h> #include <sys/sysctl.h> 直接调用 //获得设备型号 + (NSString *)getCurr ...

  5. iOS 获取设备型号以及IP地址

    首先导入四个头文件 #include <sys/types.h> #include <sys/sysctl.h> #include <ifaddrs.h> #inc ...

  6. iOS 获取设备型号 ip6更新

    //获得设备型号 + (NSString *)getCurrentDeviceModel:(UIViewController *)controller { ]; size_t len; char *m ...

  7. iOS获取设备型号的方法

    1. [UIDevice currentDevice].model   自己写的看只抓到模拟器和iPhone.暂时不推荐. 2.自己写的找的方法再添加.直接  NSString * deviceMod ...

  8. (转)iOS获取设备型号

    //获得设备型号 + (NSString *)getCurrentDeviceModel:(UIViewController *)controller { ]; size_t len; char *m ...

  9. iOS获取设备型号、设备类型等信息

    摘自 :http://www.mamicode.com/info-detail-1165460.html 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然 ...

随机推荐

  1. OpenGL 像素在内存中的排列方式

    在OpenGL中所有和图像像素有关的API(包括glTexImage2D, glReadPixels等)第一个像素从左下角开始,从左到又一次排列,满了从下到上排列. 这个和Windows 下惯用的左上 ...

  2. 国内常用DNS地址介绍

    1.谷歌全球通用DNS地址: 首选DNS地址:8.8.8.8 备选DNS地址:8.8.4.4 2.国内知名的114 DNS地址 首选DNS地址:114.114.114.114 备选DNS地址:114. ...

  3. 规则引擎集成接口(九)Java类对象

    Java类对象 右键点击“对象库” —“添加java类对象”,如下图: 弹出窗体,在文本框中输入类的全名“com.flagleader.test.Test”,选择该类型后确定,如下: 显示如下,勾选上 ...

  4. 将txt文件转换成EXCEL文件的方法

    地址:http://wenku.baidu.com/view/fcdbe8cca1c7aa00b52acbad.html 1.在EXCEL程序中点击“打开”,将文件类型选择为“文本文件”,找到以前用过 ...

  5. webuploader 上传文件参数设置

    webUploader 是款很好用的优秀的开源上传组件,由百度公司开发,详细的介绍可参见webUploader 的官方文档: 最近在使用webUploader时,需要添加额外的参数,并在后台获取,参数 ...

  6. Mysql常见四种索引的使用

    提到MySQL优化,索引优化是必不可少的.其中一种优化方式 --索引优化,添加合适的索引能够让项目的并发能力和抗压能力得到明显的提升. 我们知道项目性能的瓶颈主要是在"查(select)&q ...

  7. LR12.53—使用HP网络导游示例应用程序

    本教程使用 的HP Web之旅,一个样本的基于Web的旅行社系统,向人们展示LoadRunner将如何作为负载测试解决方案.惠普网络旅游用户连接到Web服务器,搜索航班,预订机票,检查飞行路线. 虽然 ...

  8. Oracle11g导出空表

    # Oracle11g导出空表 <!-- create time: 2015-06-01 23:35:24 --> ###原因 11G中有个新特性,当表无数据时,不分配`segment`, ...

  9. Sublime Text 3 使用

    Sublime Text3使用 下载安装 参考:http://www.downza.cn/soft/187996.html Sublime Text Build 3126 x64 Setup.exe下 ...

  10. DELL服务器系统安装

    背景环境:DELL poweredge R920 和DELL poweredege R730 新机服务器系统安装 由于以前没有自己单独装过这样的服务器,总感觉复杂,今天实战了几台服务器,挺简单的,为了 ...