【发布时间】:2012-08-26 19:29:59
【问题描述】:
我正在寻找一种方法来检测运行我的应用的设备。我对软件版本不感兴趣。我搜索了很多问题,但没有一个(令人惊讶地)满足我的需求,原因如下:
解决方案 1:
NSString *deviceType = [UIDevice currentDevice].model;
这不起作用,因为它只给了我“iPad”。我想知道是 iPad、iPad 2、新 iPad、iPhone 3GS、iPhone4 等。
解决方案 2: 不测试设备类型,检查单个功能
这不适用,因为我希望这些数据收集用户统计信息,而不是执行任何特定于设备的操作。
解决方案 3: 使用 UIDeviceHardware 发现 here
这段代码看起来已经过时了,而且似乎访问了设备上的私人数据。甚至存在争议,使用它的应用程序是否会获得批准。更重要的是,我不知道它是如何工作的 :) 还找到了另一种选择 here
我提到的最后两个可以安全使用吗?他们未来是否合规?它们是否符合 Apple 的审批规则?
或者有没有其他方法可以解决这个问题?
提前致谢。
【问题讨论】:
标签: iphone objective-c ipad device uidevice