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. MySQL的备份与还原以及常用数据库查看命令

    MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Serv ...

  2. [js高手之路]打造通用的匀速运动框架

    本文,是接着上文[js高手之路]匀速运动与实例实战(侧边栏,淡入淡出)继续的,在这篇文章的最后,我们做了2个小实例:侧边栏与改变透明度的淡入淡出效果,本文我们把上文的animate函数,继续改造,让变 ...

  3. JS代码中!!的用法,以及代码性能对比

    一.!!的理解 解释: !!的意思就是把一个任意类型的值转换为布尔类型的值,一个!是取非 再一个!又取非,相当于把这个数据转换为boolen类型了. 使用场景: 常常用在if(a).if(!!a)这样 ...

  4. 多个code.csdn.net账号切换

    code.csdn.net是国内开源库 使用git需要在项目添加密钥 而如果有多个账户,一个是私人,一个是公司,那么这时怎么做? 密钥存在~/.ssh默认是id_rsa 那么一个比较笨的办法是做一个k ...

  5. Web安全学习笔记(一)

    Web安全学习笔记(一): URL协议 HTTP协议 1. URL 2. HTTP协议 什么是HTTP HTTP的工作原理 HTTP报文 什么是Cookies HTTP请求方式 Referer请求的功 ...

  6. 【转】S3C2440存储系统-SDRAM驱动

    SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存储器)也就是通常所说的内存.内存的工作原理.控制时序.及相关控制器的配置方法一直是嵌入式系统 ...

  7. MVC-HtmlHelper简单总结

    Asp.Net MVC - Htmlhelper 总结 HtmlHelper是一个返回Html字符串的方法.返回的字符串可以是任意类型.例如你可以使用HtmlHelper方法返回一个标准的html标签 ...

  8. vue-cli + sass 的正确打开方式

    关于在vue-cli搭建的项目中怎么配置sass,网上搜到的基本是这种答案: 但是我认为,直接将样式写在每个单文件的<style>里,是十分不明智的做法.且不说node-sass安装过程的 ...

  9. MyBatis 原始Dao开发方式

    原始Dao开发方法需要程序员编写Dao接口和Dao实现类. 映射文件 <?xml version="1.0" encoding="UTF-8" ?> ...

  10. Linux系列教程(六)——Linux文件搜索命令

    前一篇博客我们讲解了Linux链接命令和权限管理命令, 通过 ln -s  链接名 表示创建软链接,不加-s表示创建硬链接:还有三个更改权限的命令,chmod命令可以更改文件或目录权限,chown命令 ...