获取设备types/型号

在这里看到如何检测用户设备在这里: iOS – 如何获取设备的型号和型号?

我做了一个快速testing应用程序来显示一个警报取决于设备。 我没有从这个代码警报。 我在这里错过/做错了什么?

#import "ViewController.h" #import <sys/utsname.h> NSString* machineName() { struct utsname systemInfo; uname(&systemInfo); return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; } @interface ViewController () @end - (IBAction)btn:(id)sender { if ([machineName() isEqualToString:@"iPhone5,1"]){ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Checking device iphone5" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil]; [alert show]; } else if ([machineName() isEqualToString:@"iPhone4,1"]){ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Checking device iphone4" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil]; [alert show]; } } 

struct utsnamemachine字段是机器硬件平台,如果程序在iOS模拟器中运行,则为"x86_64"

只有在真实的设备上,你会得到像"iPhone5,1"string。