Определить тип процессора iPhone

Я пытаюсь получить cpusubtype устройства, на котором запущено мое приложение.
Есть ли шанс получить только cpusubtype?
Ссылаясь на это: Определить процессор ArmV7 против ArmV7s. Objective-C

sysctlbyname("hw.cpusubtype", &value, &length, NULL, 0);

Будет ли возвращать числа, как 9,11,12,64? Если да, то я могу просто использовать

if hw.cpusubtype(64){
//code for arm64
}

1

Решение

Код из потока Определить процессор ArmV7 против ArmV7s. Objective-C что вы связаны с

int32_t value = 0;
size_t length = sizeof(value);
sysctlbyname("hw.cpusubtype", &value, &length, NULL, 0);

помещает подтип ЦП в value переменная, так что вы бы сравнить это с
подтипы, определенные в <mach/machine.h>, например:

if (value == CPU_SUBTYPE_ARM_V7) {
// ...
}

Но если вы хотите проверить, работает ли ваше приложение на 32-битной или 64-битной
Процессор, то вы должны получить «cutype», а не «cpusubtype», как продемонстрировано
Вот https://stackoverflow.com/a/20105134/1187415:

sysctlbyname("hw.cputype", &value, &length, NULL, 0);

if (value == CPU_TYPE_ARM64) {
// ARM 64-bit CPU
} else if (value == CPU_TYPE_ARM) {
// ARM 32-bit CPU
} else {
// Something else.
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]