2013-03-09 120 views
0

我在我的iPhone应用程序,它返回模型类型iphone模型返回nil?

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); 

但一些用户的设备我得到零以下代码。返回零的设备具有定位服务。

1)什么原因可能导致返回?

2)是否返回监狱破碎的设备?

3)有没有更好的方法来检查iDevices上的模型类型?

回答

2

试试这个:

​​

其实我加入这个作为一个类中的方法。

这给出了各种“iPhone4,1”,“iPad2,4”类型的值。

+0

narf,你是更快:D ...删除我 – Till 2013-03-09 22:58:50

+0

我得到一个错误的结构utsname的第一行是 - 变量具有不完整的类型struct utsname? – 2013-03-09 23:01:23

+0

对不起,忘记了导入。查看更新后的答案。 – rmaddy 2013-03-09 23:02:09