如何在运行时分别识别 ipad 1 和 ipad 2



可能的重复项:
使用 iPhone SDK
确定设备(iPhone、iPod Touch( iPad 2 检测

请指导我如何在真实设备上运行时检测ipad和ipad 2。由于性能问题,我想将不同的图像加载到两个手机。

提前致谢

最简单和最短的方法是检查相机,如iPad 2检测中所述:

BOOL isIPad2 = (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad &&
            [UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]);

甚至更简单: BOOL isiPad2 = [[self platform] isEqualToString:@"iPad2,1"];请记住,字符串也可以iPad2,2iPad2,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;
}
  • iPad 1 : @"iPad1,1">
  • iPad 2 : @"iPad2,1">

最新更新