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. 初学者易上手的SSH-struts2 04值栈与ognl表达式

    什么是值栈?struts2里面本身提供的一种存储机制,类似于域对象,值栈,可以存值和取值.,特点:先进后出.如果将它当做一个容器的话,而这个容器有两个元素,那么最上面的元素叫做栈顶元素,也就是所说的压 ...

  2. win10 uwp App-to-app communication 应用通信

    这篇文章都是乱说的,如果觉得有不好的,可以发我邮箱 应用之间需要相互的发送信息,就是我们经常用的分享 有个人看到一个网页很好,于是就希望把这个网页发送到邮件,那么这样的话就是使用应用通信. 因为每个应 ...

  3. 【转】open参数O_DIRECT的学习

    open参数O_DIRECT的学习 使用 O_DIRECT 需要注意的地方 posix_memalign详细解释 free:这里好几个方法我都没测试成功,最后还是用posix_memalign 对齐的 ...

  4. 【ASP.NET MVC 学习笔记】- 08 URL Routing

    本文参考:http://www.cnblogs.com/willick/p/3343105.html 1.URL Routing告诉MVC如何正确的定位Controller和Action. 2.URL ...

  5. 初学者易上手的SSH-hibernate03 三大状态与缓存

    这章主要来浅的学习下hibernate三大状态与缓存.首先来看下三大状态: 如上图,三大状态分别为临时状态(Transient),持久化状态(Persistent),游离状态(Detached).那么 ...

  6. C++流类库(11)

    C++的流类库由几个进行I/O操作的基础类和几个支持特定种类的源和目标的I/O操作的类组成. 流类库的基础类 ios类是isrream类和ostream类的虚基类,用来提供对流进行格式化I/O操作和错 ...

  7. Java基础笔记11

    异常: 即java程序在运行时出现的意外情况.  java如何处理异常. try{ //可能发生异常的地方 }catch(异常类型 对象){  //异常处理处 }catch(异常类型 对象){ }.. ...

  8. [板子]segTree

    segTree 参考:http://www.cnblogs.com/TenosDoIt/p/3453089.html#c 初学者建议先参考上面“一步一步理解线段树”学习理论. 在这里Code分别为区间 ...

  9. 关于mysql的临时表并行的问题

    mysql的临时表并行是没问题的 以为临时表是基于会话的 1.因为在mysql里面每个会话的sessionid 不一样 2.其实就是会话级别的临时表  DB2里面有会话级别 全局级别的临时表,Orac ...

  10. BabeLua常见问题

    BabeLua常见问题 来源: http://blog.csdn.net/babestudio/article/details/27228865 怎样升级BabeLua? https://babelu ...