+ (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. AE开发示例之RunGPAsync

    using System; using System.Collections.Generic;using System.ComponentModel;using System.Data;using S ...

  2. ZAM 3D 制作3D动画字幕 用于Xaml导出

    原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ...

  3. git将已经同步的某类文件加入忽略列表并同步

    1> 添加.gitignore文件到根目录,并在文件中写入忽略文件的类型或具体路径,比如: *.zip 和 /RSGIS/SnowEffect/SnowEffect.pro.user 2> ...

  4. Row_Number()显示行号

    SELECT *, Row_Number() OVER (partition by deptid ORDER BY salary desc) rank FROM employee Row_Number ...

  5. docker理念:不可变基础设施

    不可变基础设施 1.什么是Immutable Infrastructure Immutable Infrastructure,直译过来就是不可变基础设施. 它是由Chad Fowler于2013年提出 ...

  6. Spark Streaming源码解读之No Receivers彻底思考

    本期内容 : Direct Acess Kafka Spark Streaming接收数据现在支持的两种方式: 01. Receiver的方式来接收数据,及输入数据的控制 02. No Receive ...

  7. Yaf框架下类的自动加载

    前面两篇博客分别讲述了PHP自带的类加载和composer中类的自动加载,其实Yaf框架也实现了基于PSR0和PSR4的类的自动加载.根据我对Yaf下类的自动加载方式的理解写下这篇博客.由于接触Yaf ...

  8. const关键字也许该被替换为readonly

    只读的变量,其值在编译时不能被使用,因为编译器在编译时不知道其存储的内容. const修饰的只读变量 const  int   Max = 100: int  Array[Max] ; c文件中,编译 ...

  9. JS 取得一个区间的随机整数

    function rnd(n, m){        var random = Math.floor(Math.random()*(m-n+1)+n);        return random;   ...

  10. Spark+Hadoop问题小结

    1.spark执行./start-all.sh报"WARN Utils: Service 'sparkWorker' could not bind on port 0. Attempting ...