[英]Determine which iOS device is being simulated
您可以通過查看[UIScreen mainScreen].scale
的值來確定設備(或模擬器)是否是視網膜。 如果為1,則為非視網膜。 如果為2,則為視網膜。
可能有幾種檢測64/32位的方法。 一種方法是:
if (sizeof(CGFloat) == sizeof(double)) {
// 64-bit
} else {
// 32-bit
}
請注意,這會檢查應用程序,而不是設備。 32位應用程序將在64位設備上運行。 如果應用程序構建為支持64位並且設備為64位,則以上代碼僅返回true。
您可以通過檢查[UIScreen mainScreen]
的scale
來檢測設備/模擬器是否是視網膜。
要確定運行時的CPU類型,可以使用:
#include <mach/mach_host.h>
...
host_basic_info_data_t hostInfo;
mach_msg_type_number_t infoCount;
infoCount = HOST_BASIC_INFO_COUNT;
host_info(mach_host_self(), HOST_BASIC_INFO, (host_info_t)&hostInfo, &infoCount);
switch (hostInfo.cpu_type) {
case CPU_TYPE_ARM:
break;
case CPU_TYPE_ARM64:
break;
case CPU_TYPE_X86:
break;
case CPU_TYPE_X86_64:
break;
default:
break;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.