是否有安全的方法來確定設備是否屬於特定型號?例如,我必須知道用戶使用的設備是視網膜顯示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