1.手机系统版本:9.1

NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];

2.手机类型:iPhone 6

NSString* phoneModel = [self iphoneType];//方法在下面

3.手机系统:iPhone OS

NSString * iponeM = [[UIDevice currentDevice] systemName];

4.电池电量

CGFloat batteryLevel=[[UIDevice currentDevice]batteryLevel];

- (NSString*)iphoneType {

//需要导入头文件:#import <sys/utsname.h>

struct utsname systemInfo;

uname(&systemInfo);

NSString*platform = [NSString stringWithCString: systemInfo.machine encoding:NSASCIIStringEncoding];

if([platform isEqualToString:@"iPhone1,1"])  return@"iPhone 2G";

if([platform isEqualToString:@"iPhone1,2"])  return@"iPhone 3G";

if([platform isEqualToString:@"iPhone2,1"])  return@"iPhone 3GS";

if([platform isEqualToString:@"iPhone3,1"])  return@"iPhone 4";

if([platform isEqualToString:@"iPhone3,2"])  return@"iPhone 4";

if([platform isEqualToString:@"iPhone3,3"])  return@"iPhone 4";

if([platform isEqualToString:@"iPhone4,1"])  return@"iPhone 4S";

if([platform isEqualToString:@"iPhone5,1"])  return@"iPhone 5";

if([platform isEqualToString:@"iPhone5,2"])  return@"iPhone 5";

if([platform isEqualToString:@"iPhone5,3"])  return@"iPhone 5c";

if([platform isEqualToString:@"iPhone5,4"])  return@"iPhone 5c";

if([platform isEqualToString:@"iPhone6,1"])  return@"iPhone 5s";

if([platform isEqualToString:@"iPhone6,2"])  return@"iPhone 5s";

if([platform isEqualToString:@"iPhone7,1"])  return@"iPhone 6 Plus";

if([platform isEqualToString:@"iPhone7,2"])  return@"iPhone 6";

if([platform isEqualToString:@"iPhone8,1"])  return@"iPhone 6s";

if([platform isEqualToString:@"iPhone8,2"])  return@"iPhone 6s Plus";

if([platform isEqualToString:@"iPhone8,4"])  return@"iPhone SE";

if([platform isEqualToString:@"iPhone9,1"])  return@"iPhone 7";

if([platform isEqualToString:@"iPhone9,3"])  return@"iPhone 7";

if([platform isEqualToString:@"iPhone9,2"])  return@"iPhone 7 Plus";

if([platform isEqualToString:@"iPhone9,4"])  return@"iPhone 7 Plus";

if([platform isEqualToString:@"iPhone10,1"]) return@"iPhone 8";

if([platform isEqualToString:@"iPhone10,4"]) return@"iPhone 8";

if([platform isEqualToString:@"iPhone10,2"]) return@"iPhone 8 Plus";

if([platform isEqualToString:@"iPhone10,5"]) return@"iPhone 8 Plus";

if([platform isEqualToString:@"iPhone10,3"]) return@"iPhone X";

if([platform isEqualToString:@"iPhone10,6"]) return@"iPhone X";

if([platform isEqualToString:@"iPod1,1"])  return@"iPod Touch 1G";

if([platform isEqualToString:@"iPod2,1"])  return@"iPod Touch 2G";

if([platform isEqualToString:@"iPod3,1"])  return@"iPod Touch 3G";

if([platform isEqualToString:@"iPod4,1"])  return@"iPod Touch 4G";

if([platform isEqualToString:@"iPod5,1"])  return@"iPod Touch 5G";

if([platform isEqualToString:@"iPad1,1"])  return@"iPad 1G";

if([platform isEqualToString:@"iPad2,1"])  return@"iPad 2";

if([platform isEqualToString:@"iPad2,2"])  return@"iPad 2";

if([platform isEqualToString:@"iPad2,3"])  return@"iPad 2";

if([platform isEqualToString:@"iPad2,4"])  return@"iPad 2";

if([platform isEqualToString:@"iPad2,5"])  return@"iPad Mini 1G";

if([platform isEqualToString:@"iPad2,6"])  return@"iPad Mini 1G";

if([platform isEqualToString:@"iPad2,7"])  return@"iPad Mini 1G";

if([platform isEqualToString:@"iPad3,1"])  return@"iPad 3";

if([platform isEqualToString:@"iPad3,2"])  return@"iPad 3";

if([platform isEqualToString:@"iPad3,3"])  return@"iPad 3";

if([platform isEqualToString:@"iPad3,4"])  return@"iPad 4";

if([platform isEqualToString:@"iPad3,5"])  return@"iPad 4";

if([platform isEqualToString:@"iPad3,6"])  return@"iPad 4";

if([platform isEqualToString:@"iPad4,1"])  return@"iPad Air";

if([platform isEqualToString:@"iPad4,2"])  return@"iPad Air";

if([platform isEqualToString:@"iPad4,3"])  return@"iPad Air";

if([platform isEqualToString:@"iPad4,4"])  return@"iPad Mini 2G";

if([platform isEqualToString:@"iPad4,5"])  return@"iPad Mini 2G";

if([platform isEqualToString:@"iPad4,6"])  return@"iPad Mini 2G";

if([platform isEqualToString:@"iPad4,7"])  return@"iPad Mini 3";

if([platform isEqualToString:@"iPad4,8"])  return@"iPad Mini 3";

if([platform isEqualToString:@"iPad4,9"])  return@"iPad Mini 3";

if([platform isEqualToString:@"iPad5,1"])  return@"iPad Mini 4";

if([platform isEqualToString:@"iPad5,2"])  return@"iPad Mini 4";

if([platform isEqualToString:@"iPad5,3"])  return@"iPad Air 2";

if([platform isEqualToString:@"iPad5,4"])  return@"iPad Air 2";

if([platform isEqualToString:@"iPad6,3"])  return@"iPad Pro 9.7";

if([platform isEqualToString:@"iPad6,4"])  return@"iPad Pro 9.7";

if([platform isEqualToString:@"iPad6,7"])  return@"iPad Pro 12.9";

if([platform isEqualToString:@"iPad6,8"])  return@"iPad Pro 12.9";

if([platform isEqualToString:@"i386"])  return@"iPhone Simulator";

if([platform isEqualToString:@"x86_64"])  return@"iPhone Simulator";

return platform;

}

链接:https://www.theiphonewiki.com/wiki/Models#iPhone

链接:https://support.apple.com/zh-cn/HT201296

iOS获取所有机型的更多相关文章

  1. iOS获取设备唯一标识的8种方法

    8种iOS获取设备唯一标识的方法,希望对大家有用. UDID UDID(Unique Device Identifier),iOS 设备的唯一识别码,是一个40位十六进制序列(越狱的设备通过某些工具可 ...

  2. iOS 获取文件的目录路径的几种方法 [转]

    iOS 获取文件的目录路径的几种方法 2 years ago davidzhang iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. d ...

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

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

  4. Swift3.0 iOS获取当前时间 - 年月日时分秒星期

    Swift3.0 iOS获取当前时间 - 年月日时分秒星期func getTimes() -> [Int] { var timers: [Int] = [] // 返回的数组 let calen ...

  5. IOS 获取最新设备型号方法

    1.IOS 获取最新设备型号方法列表最新对照表:http://theiphonewiki.com/wiki/Models方法: #import "sys/utsname.h” struct ...

  6. ios 获取通讯录的所有信息

    iOS获取通讯录全部信息 ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef results = ABAddressBoo ...

  7. iOS获取汉字的拼音

    在iOS开发中经常涉及到汉字的排序,最常见的就是需要根据首字母的字符顺序排列,比如常见的通讯录等.总结出来,大致可以分为两种方法,其中参考文献[1]中提供的方法十分复杂,利用查表的方法是先,并且代码量 ...

  8. IOS获取物理尺寸中7Plus中获取的是7的物理尺寸

    IOS获取物理尺寸中7Plus中获取的是7的物理尺寸: 在开发调试过程中我的7Plus手机获取[uiscreen mainscreen].bounds为750  .1334. 解决方案:在手机中的显示 ...

  9. iOS: 获取文件路径

    iOS: 获取文件路径   // 例如 - (NSString *)applicationDocumentsDirectory { return [NSSearchPathForDirectories ...

随机推荐

  1. Struts2 03---数据封装+获取表单提交数据

        Struts的数据封装分为三种:属性封装,模型驱动,表达式封装.下面以获取表单提交数据来简单介绍一下Struts的数据封装. <form action="loginlogin. ...

  2. java连接sqlserver2008r2 心得

    现在是该轻松一笑的时候了,困扰已久的问题有了解释了. 之前的各种连不上,说到底还是权限问题,sqlserver2008r2的权限分得太细了. 两个实例间数据库互相都看不到,更不用谈访问了. 端口号也是 ...

  3. FixedUpdate真的是固定的时间间隔执行吗?聊聊游戏定时器

    0x00 前言 有时候即便是官方的文档手册也会让人产生误解,比如本文将要讨论的Unity引擎中的FixedUpdate方法. This function is called every fixed f ...

  4. 2017上海QCon之旅总结(上)

    本来这个公众号的交流消息中间件相关的技术的.这周去上海参加了QCon,第一次参加这样的技术会议,感受挺多的,所以整理一下自己的一些想法接公众号和大家交流一下. 下面进入正题,从自己参加了的一些分享中挑 ...

  5. Nginx功能展示实验

    Nginx功能展示实验 Nging可以作为反代服务器:也可以作为负载均衡器,并自带根据对后端服务器健康状态检测具有增删服务器的功能:也可以作为纯Web服务器,提供Web服务. 本实验将使用Nginx实 ...

  6. java遍历hashMap、hashSet、Hashtable

    一.遍历HashMap Map<Integer, String> map = new HashMap<Integer, String>(); 方法一:效率高 for(Entry ...

  7. js正则验证特殊字符

    js正则验证特殊字符 方案一 var regEn = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im, regCn = /[·!#¥(--):: ...

  8. LeetCode 88. Merge Sorted Array(合并有序数组)

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...

  9. SQL2008清空删除日志:

    SQL2008清空删除日志: '在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式. USE [master] GO ALTER DATABASE DNName SET ...

  10. POJ2411 Mondriaan's Dream(状态压缩)

    Mondriaan's Dream Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 15295   Accepted: 882 ...