我的 iPhone 应用程序中有以下代码,它返回模型类型
size_t size;
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
char *modelType = malloc(size);
sysctlbyname("hw.machine", modelType, &size, NULL, 0);
NSString *deviceModel = [NSString stringWithCString:modelType encoding:NSUTF8StringEncoding];
free(modelType);
但在某些用户的设备上,我得到了零。返回 nil 的设备具有定位服务。
1) 什么可能导致 nil 被退回?
2) 越狱设备是否返回 nil?
3) 有没有更好的方法来检查 iDevices 上的模型类型?