有设备的型号属性,但它不区分 iPhone 和 iPhone 3G。有没有更好的办法?
斯蒂芬发布的项目中特别有趣的部分是:
您可能会看到的字符串值:
/*
Platforms
iPhone1,1 -> iPhone 1G
iPhone1,2 -> iPhone 3G
iPod1,1 -> iPod touch 1G
iPod2,1 -> iPod touch 2G
*/
如何获得这些值之一:
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);
然后您可以检查平台的开头@"iPhone"
or @"iPod"
并告诉您是否有带 GPS 的设备。我不建议根据您想要的内容匹配整个字符串,因为下次设备出现时(例如今年夏天,很可能)您将无法在不更改代码的情况下匹配它。
另外,如果您还没有看过,Erica Sadun(项目作者)在以下网址上有一些关于 iPhone 开发的优秀文章:ArsTechnica.com以及至少一本关于它的书。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)