获取IOS设备是Iphone几

来源:互联网 发布:西安爱知中学在哪里 编辑:程序博客网 时间:2024/05/14 07:55
1.  首先要引入头文件  
  #import "sys/utsname.h"


  定义一个函数:

  + (std::string) getIosDeviceNameAndGeneration;


  函数实现如下:

  + (std::string) getIosDeviceNameAndGeneration

  {

    struct utsname systemInfo;

    

    uname(&systemInfo);


    NSLog(@"%@", [NSStringstringWithCString:systemInfo.machineencoding:NSUTF8StringEncoding]);


    return  std::string(systemInfo.machine);

   }


    utsname包括:

      utsname.sysname  //Name of system

      utsname.nodename //Name of this network node

      utsname.release  //Release level

      utsname.version  //Version level

      utsname.machine  //Hardware type


      其中machine字段就是硬件的类型,比如 iPhone4,1 等。


2. 如果只要获得硬件的类型,比如 iPod touch,iPhone,iPhone Simulator

   

   + (std::string) getIosDeviceName;


   实现:

   + (std::string) getIosDeviceName

  {

    NSString  *nsModelName=[[UIDevicecurrentDevice]model];

    return    [nsModelName UTF8String];

  }


获取到的设备名的值跟IOS设备对照:

iPhone1,1iPhone 2G (A1203)
   iPhone1,2iPhone 3G (A1241/A1324)
   iPhone2,1iPhone 3GS (A1303/A1325)
   iPhone3,1iPhone 4 (A1332)
 iPhone3,2iPhone 4 (A1332)
  iPhone3,3iPhone 4 (A1349)
    iPhone4,1iPhone 4S (A1387/A1431)
iPhone5,1iPhone 5 (A1428)
iPhone5,2iPhone 5 (A1429/A1442)
iPhone5,3iPhone 5c (A1456/A1532)
iPhone5,4iPhone 5c (A1507/A1516/A1526/A1529)
iPhone6,1iPhone 5s (A1453/A1533)
 iPhone6,2iPhone 5s (A1457/A1518/A1528/A1530)
 iPhone7,1iPhone 6 Plus (A1522/A1524)
 iPhone7,2iPhone 6 (A1549/A1586)
     
iPod1,1iPod Touch 1G (A1213)
iPod2,1iPod Touch 2G (A1288)
iPod3,1iPod Touch 3G (A1318)
iPod4,1iPod Touch 4G (A1367)
iPod5,1iPod Touch 5G (A1421/A1509)
     
iPad1,1iPad 1G (A1219/A1337)
     iPad2,1iPad 2 (A1395)
iPad2,2iPad 2 (A1396)
iPad2,3iPad 2 (A1397)
iPad2,4iPad 2 (A1395+New Chip)
iPad2,5iPad Mini 1G (A1432)
iPad2,6iPad Mini 1G (A1454)
iPad2,7iPad Mini 1G (A1455)
iPad3,1iPad 3 (A1416)
iPad3,2iPad 3 (A1403)
iPad3,3iPad 3 (A1430)
iPad3,4iPad 4 (A1458)
iPad3,5iPad 4 (A1459)
iPad3,6iPad 4 (A1460)
iPad4,1iPad Air (A1474)
iPad4,2iPad Air (A1475)
iPad4,3iPad Air (A1476)
iPad4,4iPad Mini 2G (A1489)
iPad4,5iPad Mini 2G (A1490)
iPad4,6iPad Mini 2G (A1491)
     
   i386iPhone Simulator
x86_64iPhone Simulator
0 0
原创粉丝点击