iOS获取所有机型
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获取所有机型的更多相关文章
- iOS获取设备唯一标识的8种方法
8种iOS获取设备唯一标识的方法,希望对大家有用. UDID UDID(Unique Device Identifier),iOS 设备的唯一识别码,是一个40位十六进制序列(越狱的设备通过某些工具可 ...
- iOS 获取文件的目录路径的几种方法 [转]
iOS 获取文件的目录路径的几种方法 2 years ago davidzhang iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. d ...
- iOS获取设备型号、装置类型等信息
iOS获取设备型号.设备类型等信息 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然而他们都陆陆续续倒在了苹果的门下.苹果目前提供了2个方法供App获取设 ...
- Swift3.0 iOS获取当前时间 - 年月日时分秒星期
Swift3.0 iOS获取当前时间 - 年月日时分秒星期func getTimes() -> [Int] { var timers: [Int] = [] // 返回的数组 let calen ...
- IOS 获取最新设备型号方法
1.IOS 获取最新设备型号方法列表最新对照表:http://theiphonewiki.com/wiki/Models方法: #import "sys/utsname.h” struct ...
- ios 获取通讯录的所有信息
iOS获取通讯录全部信息 ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef results = ABAddressBoo ...
- iOS获取汉字的拼音
在iOS开发中经常涉及到汉字的排序,最常见的就是需要根据首字母的字符顺序排列,比如常见的通讯录等.总结出来,大致可以分为两种方法,其中参考文献[1]中提供的方法十分复杂,利用查表的方法是先,并且代码量 ...
- IOS获取物理尺寸中7Plus中获取的是7的物理尺寸
IOS获取物理尺寸中7Plus中获取的是7的物理尺寸: 在开发调试过程中我的7Plus手机获取[uiscreen mainscreen].bounds为750 .1334. 解决方案:在手机中的显示 ...
- iOS: 获取文件路径
iOS: 获取文件路径 // 例如 - (NSString *)applicationDocumentsDirectory { return [NSSearchPathForDirectories ...
随机推荐
- 初学者易上手的SSH-struts2 04值栈与ognl表达式
什么是值栈?struts2里面本身提供的一种存储机制,类似于域对象,值栈,可以存值和取值.,特点:先进后出.如果将它当做一个容器的话,而这个容器有两个元素,那么最上面的元素叫做栈顶元素,也就是所说的压 ...
- win10 uwp App-to-app communication 应用通信
这篇文章都是乱说的,如果觉得有不好的,可以发我邮箱 应用之间需要相互的发送信息,就是我们经常用的分享 有个人看到一个网页很好,于是就希望把这个网页发送到邮件,那么这样的话就是使用应用通信. 因为每个应 ...
- 【转】open参数O_DIRECT的学习
open参数O_DIRECT的学习 使用 O_DIRECT 需要注意的地方 posix_memalign详细解释 free:这里好几个方法我都没测试成功,最后还是用posix_memalign 对齐的 ...
- 【ASP.NET MVC 学习笔记】- 08 URL Routing
本文参考:http://www.cnblogs.com/willick/p/3343105.html 1.URL Routing告诉MVC如何正确的定位Controller和Action. 2.URL ...
- 初学者易上手的SSH-hibernate03 三大状态与缓存
这章主要来浅的学习下hibernate三大状态与缓存.首先来看下三大状态: 如上图,三大状态分别为临时状态(Transient),持久化状态(Persistent),游离状态(Detached).那么 ...
- C++流类库(11)
C++的流类库由几个进行I/O操作的基础类和几个支持特定种类的源和目标的I/O操作的类组成. 流类库的基础类 ios类是isrream类和ostream类的虚基类,用来提供对流进行格式化I/O操作和错 ...
- Java基础笔记11
异常: 即java程序在运行时出现的意外情况. java如何处理异常. try{ //可能发生异常的地方 }catch(异常类型 对象){ //异常处理处 }catch(异常类型 对象){ }.. ...
- [板子]segTree
segTree 参考:http://www.cnblogs.com/TenosDoIt/p/3453089.html#c 初学者建议先参考上面“一步一步理解线段树”学习理论. 在这里Code分别为区间 ...
- 关于mysql的临时表并行的问题
mysql的临时表并行是没问题的 以为临时表是基于会话的 1.因为在mysql里面每个会话的sessionid 不一样 2.其实就是会话级别的临时表 DB2里面有会话级别 全局级别的临时表,Orac ...
- BabeLua常见问题
BabeLua常见问题 来源: http://blog.csdn.net/babestudio/article/details/27228865 怎样升级BabeLua? https://babelu ...