【发布时间】:2012-01-16 03:48:48
【问题描述】:
可能重复:
Determine device (iPhone, iPod Touch) with iPhone SDK
iPad 2 detection
请指导我如何在真实设备上运行时检测 ipad 和 ipad 2。由于性能问题,我想将不同的图像加载到这两款手机。
提前致谢
【问题讨论】:
标签: iphone ipad cocos2d-iphone ipad-2
可能重复:
Determine device (iPhone, iPod Touch) with iPhone SDK
iPad 2 detection
请指导我如何在真实设备上运行时检测 ipad 和 ipad 2。由于性能问题,我想将不同的图像加载到这两款手机。
提前致谢
【问题讨论】:
标签: iphone ipad cocos2d-iphone ipad-2
最简单快捷的方法是检查摄像头,如iPad 2 detection 所述:
BOOL isIPad2 = (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad &&
[UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]);
甚至更简单:
BOOL isiPad2 = [[self platform] isEqualToString:@"iPad2,1"];
请记住,字符串也可以是iPad2,2 和iPad2,3。
【讨论】:
- (NSString *)machine {
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *machine = malloc(size);
sysctlbyname("hw.machine", machine, &size, NULL, 0);
NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
free(machine);
return platform;
}
【讨论】: