iOS 设备判断 最新统计代码

- (NSString*) deviceName

{

struct utsname systemInfo;

uname(&systemInfo);

NSString* code = [NSString stringWithCString:systemInfo.machine

encoding:NSUTF8StringEncoding];

static NSDictionary* deviceNamesByCode = nil;

if (!deviceNamesByCode) {

deviceNamesByCode = @{@"i386"      :@"Simulator",

@"iPod1,1"   :@"iPodTouch1",      // (Original)

@"iPod2,1"   :@"iPodTouch2",      // (Second Generation)

@"iPod3,1"   :@"iPodTouch3",      // (Third Generation)

@"iPod4,1"   :@"iPodTouch4",      // (Fourth Generation)

@"iPhone1,1" :@"iPhone2G11",          // (Original)

@"iPhone1,2" :@"iPhone3G12",          // (3G)

@"iPhone2,1" :@"iPhone3GS21",          // (3GS)

@"iPad1,1"   :@"iPad",            // (Original)

@"iPad2,1"   :@"iPad2",          //

@"iPad3,1"   :@"iPad",            // (3rd Generation)

@"iPhone3,1" :@"iPhone431",//

@"iPhone3,2" :@"iPhone432",

@"iPhone3,3" :@"iPhone433",

@"iPhone4,1" :@"iPhone4S41",//

@"iPhone4,2" :@"iPhone442",

@"iPhone4,3" :@"iPhone443",

@"iPhone5,1" :@"iPhone551",        // (model A1428, AT&T/Canada)

@"iPhone5,2" :@"iPhone552",

@"iPad3,4"   :@"iPad",            // (4th Generation)

@"iPad2,5"   :@"iPadMini",       // (Original)

@"iPhone5,3" :@"iPhone5C53",       // (model A1456, A1532 | GSM)

@"iPhone5,4" :@"iPhone5C54",       // (model A1507, A1516, A1526 (China), A1529 | Global)

@"iPhone6,1" :@"iPhone5S61",       // (model A1433, A1533 | GSM)

@"iPhone6,2" :@"iPhone5S62",       // (model A1457, A1518, A1528 (China), A1530 | Global)

@"iPad4,1"   :@"iPadAir",        // 5th Generation iPad (iPad Air) - Wifi

@"iPad4,2"   :@"iPadAir",        // 5th Generation iPad (iPad Air) - Cellular

@"iPad4,4"   :@"iPadMini",       // (2nd Generation iPad Mini - Wifi)

@"iPad4,5"   :@"iPadMini"        // (2nd Generation iPad Mini - Cellular)

};

}

小伙伴们快去试试吧!~

时间: 2024-08-02 00:16:03

iOS 设备判断 最新统计代码的相关文章

在Android和iOS设备上调用C++代码

不少Android和iOS项目中,因为种种原因不得不调用C/C++代码.这篇文章主要讲述如何通过Objective-C++.NDK技术在iOS及Android设备上调用C/C++代码. 主要工作原理 主要工作原理,如上图所示.Google Android提供NDK以便支持C/C++代码,而iOS可以通过Objective-C++(*.mm)来支持C/C++代码的编译运行.如果有朋友钻研过Cocos2d-x的话,应该对上述这些内容非常熟悉.好了,废话不多说,开始提供干货. 需要调用的C++代码 我

ios设备判断

设备判断 + (NSString *)deviceString { // 需要#import "sys/utsname.h" struct utsname systemInfo; uname(&systemInfo); NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; if ([deviceString isEqualTo

统计代码陷阱之无形中影响了网速

http://www.yilingsj.com/xwzj/2016-08-30/435.html 说起网站统计代码,稍微有过了解的看官肯定会想起一堆统计平台,例如:百度统计.51.la统计.友盟统计等等.而这些统计代码中也是存在陷阱的哦! 一.回顾优化网页常识 通常来说,我们会将js代码置于闭合的</body>前,因为这样做的好处就是:网页是从上往下进行加载的,js放最下面是最后加载,这样可以提升打开网页的速度. 虽然道理看官都懂,不就是将js放最下面嘛,有什么好说的.可看官真的懂??? 二.

判断不同IOS设备

var iOSGen = iPhone.generation; if (Debug.isDebugBuild) { Debug.Log("iPhone.generation : " + iPhone.generation); Debug.Log("SystemInfo.deviceType : " + SystemInfo.deviceType); Debug.Log("SystemInfo.deviceModel: " + SystemInfo

如何判断 ios设备的类型(iphone,ipod,ipad)

-(bool)checkDevice:(NSString*)name { NSString* deviceType = [UIDevice currentDevice].model; NSLog(@"deviceType = %@", deviceType); NSRange range = [deviceType rangeOfString:name]; return range.location != NSNotFound; } NSString * [email protecte

navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) 判断是不是 移动设备 &#39;ontouchstart&#39; in window; 判断支不支

navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) 判断是不是 移动设备 'ontouchstart' in window; 判断支不支触屏 navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) 判断是不是 移动设备 'ontouchstart' in window; 判断支不支

苹果新设备判断

苹果设备我参考其他的资料,大多大神写的东西只讲一些概念,必要的判断都没有写,必须iphonex的底部适配的高度是34,所以我对之前的设备适配只做了iphoneX.但是现在新出的设备xs和xr都需要底部适配,所以设备的判断就需要更改 1.只需要适配iphoneX #define IsiPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 24

利用预渲染加速iOS设备的图像显示

    最近在做一个UITableView的例子,发现滚动时的性能还不错.但来回滚动时,第一次显示的图像不如再次显示的图像流畅,出现前会有稍许的停顿感. 于是我猜想显示过的图像肯定是被缓存起来了,查了下文档后发现果然如此. 后来在<Improving Image Drawing Performance on iOS>一文中找到了一些提示:原来在显示图像时,解压和重采样会消耗很多CPU时间:而如果预先在一个bitmap context里画出图像,再缓存这个图像,就能省去这些繁重的工作了. 接着我

统计代码注释行的一些问题

1. 要统计一个c文件或者cpp文件里面的注释行,空行,总行数等,首先我们遇到的问题就是打开这个文件. ofstream: 写操作(输出)的文件类 ifstream: 读操作(输入)的文件类 fstream: 可同时读写操作的文件类 这里我们只要读取文件里面的数据即可,所以选用ifstream.注意头文件(fstream). 然后我们也许想,我想打开指定位置的文件,应该怎么做,怎么把指定目录下的c文件和cpp文件显示出来让我们选择.这里我们就要用到一些“dos”命令了. ifstream inf