当前位置: 代码迷 >> Iphone >> 最全最新获取各种装置号 (含iphone6,iphone6 plus)
  详细解决方案

最全最新获取各种装置号 (含iphone6,iphone6 plus)

热度:319   发布时间:2016-04-25 05:45:28.0
最全最新获取各种设备号 (含iphone6,iphone6 plus)

#include <sys/types.h>

#include <sys/sysctl.h>


@implementation DeviceManager


+ (NSString*)getDeviceVersion

{

   size_t size;

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

   char *machine = (char*)malloc(size);

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

    NSString *platform = [NSStringstringWithCString:machineencoding:NSUTF8StringEncoding];

    //NSString *platform = [NSStringstringWithUTF8String:machine];二者等效

   free(machine);

   return platform;

}


+ (NSString *)getPlatformString

{

   NSString *platform = [selfgetDeviceVersion];

    

    //iPhone

   if ([platformisEqualToString:@"iPhone1,1"])  return@"iPhone 1";

   if ([platformisEqualToString:@"iPhone1,2"])  return@"iPhone 3";

    if ([platformisEqualToString:@"iPhone2,1"])  return@"iPhone 3GS";

   if ([platformisEqualToString:@"iPhone3,1"])  return@"iPhone 4";

   if ([platformisEqualToString:@"iPhone3,2"])  return@"iPhone 4";

   if ([platformisEqualToString:@"iPhone3,3"])  return@"iPhone 4";

   if ([platformisEqualToString:@"iPhone4,1"])  return@"iPhone 4s";

   if ([platformisEqualToString:@"iPhone5,1"])  return@"iPhone 5";

   if ([platformisEqualToString:@"iPhone5,2"])  return@"iPhone 5";

   if ([platformisEqualToString:@"iPhone5,3"])  return@"iPhone 5C";

   if ([platformisEqualToString:@"iPhone5,4"])  return@"iPhone 5C";

   if ([platformisEqualToString:@"iPhone6,1"])  return@"iPhone 5S";

   if ([platformisEqualToString:@"iPhone6,2"])  return@"iPhone 5S";

   if ([platformisEqualToString:@"iPhone7,1"])  return@"iPhone 6";

    if ([platformisEqualToString:@"iPhone7,2"])  return@"iPhone 6 Plus";

    

    //iPot Touch

   if ([platformisEqualToString:@"iPod1,1"])    return@"iPod Touch";

   if ([platformisEqualToString:@"iPod2,1"])    return@"iPod Touch 2";

   if ([platformisEqualToString:@"iPod3,1"])    return@"iPod Touch 3";

   if ([platformisEqualToString:@"iPod4,1"])    return@"iPod Touch 4";

   if ([platformisEqualToString:@"iPod5,1"])    return@"iPod Touch 5";

 

    //iPad

   if ([platformisEqualToString:@"iPad1,1"])    return@"iPad";

   if ([platformisEqualToString:@"iPad2,1"])    return@"iPad 2";

   if ([platformisEqualToString:@"iPad2,2"])    return@"iPad 2";

   if ([platformisEqualToString:@"iPad2,3"])    return@"iPad 2";

   if ([platformisEqualToString:@"iPad2,4"])    return@"iPad 2";

   if ([platformisEqualToString:@"iPad2,5"])    return@"iPad Mini 1";

   if ([platformisEqualToString:@"iPad2,6"])    return@"iPad Mini 1";

   if ([platformisEqualToString:@"iPad2,7"])    return@"iPad Mini 1";

   if ([platformisEqualToString:@"iPad3,1"])    return@"iPad 3";

   if ([platformisEqualToString:@"iPad3,2"])    return@"iPad 3";

   if ([platformisEqualToString:@"iPad3,3"])    return@"iPad 3";

   if ([platformisEqualToString:@"iPad3,4"])    return@"iPad 4";

   if ([platformisEqualToString:@"iPad3,5"])    return@"iPad 4";

   if ([platformisEqualToString:@"iPad3,6"])    return@"iPad 4";

   if ([platformisEqualToString:@"iPad4,1"])    return@"iPad air";

   if ([platformisEqualToString:@"iPad4,2"])    return@"iPad air";

   if ([platformisEqualToString:@"iPad4,3"])    return@"iPad air";

   if ([platformisEqualToString:@"iPad4,4"])    return@"iPad mini 2";

   if ([platformisEqualToString:@"iPad4,5"])    return@"iPad mini 2";

   if ([platformisEqualToString:@"iPad4,6"])    return@"iPad mini 2";

   if ([platformisEqualToString:@"iPad4,7"])    return@"iPad mini 3";

   if ([platformisEqualToString:@"iPad4,8"])    return@"iPad mini 3";

   if ([platformisEqualToString:@"iPad4,9"])    return@"iPad mini 3";

   if ([platformisEqualToString:@"iPad5,3"])    return@"iPad air 2";

   if ([platformisEqualToString:@"iPad5,4"])    return@"iPad air 2";

    

    

    if ([platformisEqualToString:@"iPhone Simulator"] || [platformisEqualToString:@"x86_64"])       return@"iPhone Simulator";

    

   return platform;

    

}