码迷,mamicode.com
首页 > 移动开发 > 详细

获取iOS设备型号的方法总结

时间:2015-10-13 20:41:25      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

三种常用的办法获取iOS设备的型号:

1. [UIDevice currentDevice].model (推荐);

2. uname(struct utsname *name) ,使用此函数需要#include ;

3.sysctlbyname(const char *name, void *oldp, size_t *oldlenp, void *newp,

         size_t newlen) ,使用此函数需要#include ,#include;

 

推荐使用第一种方法,为最上层的API,在项目开发中推荐使用高级的API ,因为其识别度高,更简洁易用。2、3两种都是BSD级别的API ,为底层的API,不推荐。

 

示例:

1. NSString * strModel  = [UIDevice currentDevice].model ;

 

2. struct utsname systemInfo 

     uname(&systemInfo) 

    NSString * strModel = [NSString stringWithCString:systemInfo.machine

                                                                             encoding:NSUTF8StringEncoding];

3. size_t size 

     sysctlbyname ("hw.machine" , NULL , &size ,NULL ,0)

     char *model = (char *)malloc(size)

     sysctlbyname ("hw.machine" , model , &size ,NULL ,0)

     NSString * strModel = [NSString stringWithCString: model

                                                                             encoding:NSUTF8StringEncoding];

 

获取了设备型号之后,还不能准确的了解其设备类型,还需要找到与其型号对应的设备说明。

如iPad2,1对应的是 iPad2(WIFI)。

此对应表已有前人很好总结出来:

 

struct utsname systemInfo;

uname(&systemInfo);
NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
 

通过,如上方式即可获取到设备的型号信息,具体对应关系如下,截止2013,2,5。

  iphone 5,1   iphone5(移动,联通)
  iphone 5,2   iphone5(移动,电信,联通)
  iphone 4,1     iphone4S
  iphone 3,1     iphone4(移动,联通)
  iphone 3,2     iphone4(联通)
  iphone 3,3     iphone4(电信)
  iphone 2,1       iphone3GS
  iphone 1,2     iphone3G
  iphone 1,1     iphone
  ipad 1,1     ipad 1
  ipad 2,1     ipad 2(Wifi)
  ipad 2,2     ipad 2(GSM)
  ipad 2,3     ipad 2(CDMA)
  ipad 2,4     ipad 2(32nm)
  ipad 2,5     ipad mini(Wifi)
  ipad 2,6     ipad mini(GSM)
  ipad 2,7     ipad mini(CDMA)
  ipad 3,1     ipad 3(Wifi)
  ipad 3,2     ipad 3(CDMA)
  ipad 3,3     ipad 3(4G)
  ipad 3,4     ipad 4(Wifi)
  ipad 3,5     ipad 4(4G)
  ipad 3,6     ipad 4(CDMA)
  ipod 5,1     ipod touch 5
  ipod 4,1     ipod touch 4
  ipod 3,1     ipod touch 3
  ipod 2,1     ipod touch 2
  ipod 1,1     ipod touch

 

获取iOS设备型号的方法总结

标签:

原文地址:http://www.cnblogs.com/isItOk/p/4875532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!