我使用this代码来识别iPhone设备。任何人都可以向我解释如何调用并获取当前的设备版本?
如何调用其中一种方法?
+ (DeviceHardwareSpecificPlatform)specificPlatform;
+ (DeviceHardwareGeneralPlatform)generalPlatform;
+ (DeviceHardwarePlatformType)platformType;
+ (NSString *)platformString;
我从另一个班级打电话给他们。
答案 0 :(得分:0)
根据您提供的链接,有一个usage.txt文件
UIDeviceHardware *h=[[UIDeviceHardware alloc] init];
[self setDeviceModel:[h platformString]];
[h release];
实际上,这是一段带有手动管理内存的旧代码。使用ARC,您可能希望使用:
UIDeviceHardware *h=[[UIDeviceHardware alloc] init];
[self setDeviceModel:[h platformString]];
答案 1 :(得分:0)
UIDevice类提供运行应用程序的设备的所有信息。
UIDevice * deviceInfo = [UIDevice currentDevice];
NSLog(@“OS running on device: %@”, deviceInfo.systemName);
//在设备上运行的操作系统:iPhone OS
NSLog(@“在设备上运行的操作系统版本:%@”,deviceInfo.systemVersion);
//在设备上运行的操作系统版本:7.1
NSLog(@“设备型号:%@”,deviceInfo.model);
//设备型号:iPod touch
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *machine = malloc(size);
sysctlbyname("hw.machine", machine, &size, NULL, 0);
NSString *deviceModelVersion = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
free(machine);
NSLog(@"Device model version: %@", deviceModelVersion);
//Device model version: iPhone4, 1
NSLog(@“Device name: %@”, deviceInfo.name);
//Device name: my iPod