【发布时间】:2012-08-15 09:11:06
【问题描述】:
是否有一种安全的方法可以确定设备是否属于特定型号?例如,我必须知道用户使用的设备是否是视网膜显示器 iPod touch。
【问题讨论】:
-
您需要知道的原因是什么?最好检查单个设备的功能而不是特定型号。
标签: iphone ios ipod-touch
是否有一种安全的方法可以确定设备是否属于特定型号?例如,我必须知道用户使用的设备是否是视网膜显示器 iPod touch。
【问题讨论】:
标签: iphone ios ipod-touch
NSRange r = [[[UIDevice currentDevice] model] rangeOfString:@"iPod"];
float s = [[UIScreen mainScreen] scale];
if (r.location != NSNotFound && s > 1.5f) {
// retina iTouch
}
【讨论】:
我可能会尝试这样的事情:
+(BOOL) isRetinaiPod
{
return [[[UIDevice currentDevice] model] isEqualToString:@"iPod touch"] && [UIScreen mainScreen].scale >= 2.0f;
}
但是,您可以使用以下命令返回设备名称:
+ (NSString *) deviceName
{
struct utsname u;
uname(&u);
return [NSString stringWithUTF8String:u.sysname];
}
【讨论】:
struct utsname u; uname(&u); return u; 这是错误的:struct utsname 不是 NSString。
@(u.machine)。复制错误。我已经修改了我实际使用的内容(我缓存了值)