是否有安全的方法来确定设备是否属于特定型号?例如,我必须知道用户使用的设备是视网膜显示iPod touch。如何检查iOS设备是否为视网膜屏幕iPod touch?
0
A
回答
8
NSRange r = [[[UIDevice currentDevice] model] rangeOfString:@"iPod"];
float s = [[UIScreen mainScreen] scale];
if (r.location != NSNotFound && s > 1.5f) {
// retina iTouch
}
2
我可能会尝试这样的事:
+(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];
}
+0
'struct utsname u; uname(&u); return u;'这是错误的:struct utsname不是一个NSString。 – 2012-08-15 10:54:32
+0
感谢您的更正,所以是这样。我的代码没有这个工作,但我很不确定为什么! – 2012-08-15 12:28:43
+0
也许你没有调用该方法 - 如果你打电话给它,它会碰到一个segfaul。:) – 2012-08-15 12:30:31
相关问题
- 1. 如何让CoreMotion代码在视网膜iPod touch设备上工作?
- 2. 视网膜屏幕ios逻辑
- 3. 如何检查Android设备是HDPI屏幕还是MDPI屏幕?
- 4. 视网膜设备是否需要自己的媒体查询?
- 5. 如何检测/识别设备锁定屏幕设置是否设置为无?
- 6. 视网膜屏幕增加计算
- 7. 如何检查设备是ipod当发送短信inapps在iphone
- 8. 何时以及如何开始忘记非视网膜显示iPhone和iPod Touch?
- 9. 知道设备类型 - 视网膜/非视网膜
- 10. iOS上视网膜屏幕的着色器优化
- 11. Xcode 4 - “未配备iOS设备已连接”与iPod touch 2
- 12. 在iPhone SDK中检测视网膜屏幕/ iPhone 4
- 13. 如何检测模拟iOS设备的屏幕尺寸?
- 14. 将图像用于视网膜和非视网膜屏幕上的文字
- 15. 为正常屏幕和视网膜屏幕创建单个应用程序
- 16. 是第4代iPod touch作为测试设备吗
- 17. 什么可以是iPhone 4(视网膜)屏幕的尺寸
- 18. 如何检测耳机是否连接到iPod touch G1?
- 19. iOS 11 CoreNFC如何检查设备是否具有NFC功能?
- 20. Xamarin.iOS,Xcode 8.0,iOS 10.0更新和iPod Touch测试设备
- 21. CATiledLayer&视网膜显示屏
- 22. 如何了解设备屏幕是否正在IOS中录制11
- 23. 有没有办法检查iCloud备份是否为iOS设备设置?
- 24. 为小屏幕设备
- 25. iOS SDWebImage - 如何正确处理不同设备上的视网膜图像?
- 26. 检测设备型号(iPhone/iPod Touch)的正确方法?
- 27. 如何检查Android设备是否连接到网络?
- 28. 如何检查Android设备是否可以访问互联网?
- 29. 视网膜和非视网膜显示屏支持图形
- 30. 咖啡 - 检查屏幕是否可见
什么是你需要知道什么原因呢?最好检查单个设备的功能,而不是特定的型号。 – jrturton 2012-08-15 09:23:40
https://gist.github.com/1323251 – janusbalatbat 2012-08-15 09:32:20