+ (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. Esfog_UnityShader教程_NormalMap法线贴图

    咳咳,好久没有更新了,一来是这段时间很忙很忙,再来就是自己有些懒了,这个要不得啊,赶紧补上.在前面我们已经介绍过了漫反射和镜面反射,这两个是基本的光照类型,仅仅依靠它们就想制作出精美的效果是远远不够的 ...

  2. pip install tushare

    1.sudo apt-get install libxml2-dev libxslt1-dev python-dev apt-get install libevent-dev pip install ...

  3. I prefer fcitx

    sudo add-apt-repository ppa:fcitx-team/nightly sudo apt-get update Then, you should install Fcitx.Fc ...

  4. Java导出Word利用freemarker(含图片)

    制作Word模版 建议使用高版本的office做,尽量不要用WPS做,生成xml会出现乱码 编码要统一,推荐UTF-8 建好模板,将模板另存为xml格式,建议原来模板不要删,xml的如果后期打不开,还 ...

  5. 交换机做Channel-Group

    core1#conf tEnter configuration commands, one per line.  End with CNTL/Z.core1(config)#inter range g ...

  6. Lucene.net 高亮显示搜索词

    网站搜索关键词,往往搜索的结果中,要把用户搜索的词突出显示出来,这就是高亮搜索词的含义.而lucene也恰恰支持这样的操作.在此,我用的是盘古的组件,代码如下: PanGu.HighLight.Sim ...

  7. sencha touch打包成安装程序

    为了更好地向大家演示如何打包一个sencha touch的项目,我们用sencha cmd创建一个演示项目,如果你的sencha cmd环境还没有配置,请参照 sencha touch 入门系列 (二 ...

  8. wxWidgets编译安装gtk问题的解决办法

    下面是google到的一篇博文.我在centos5.3中想安装amule,结果编译时,提示没找到wxWidgets退出了.只好又去下了wxWidgets,还是源码,需要编译.编译中出现和下面这位网友一 ...

  9. review again and again

    盲评结果出来了.然而对于我并没有太大的影响.从头到尾我没有紧张过,自然也不会有如释重负的感觉. 昨天说了事情要提前做准备.早上,到教研室挺早,review的时候,发现论文中一个关于目录的小问题,解决掉 ...

  10. 转@OneToMany或@ManyToOne的用法-annotation关系映射篇(上)

    原文:http://blog.sina.com.cn/s/blog_6fef491d0100obdm.html 例如我们用一个例子来开启JPA的一对多和多对一的学习. 比如你去当当网上买书籍,当当网就 ...