Поскольку предполагается, что 64-битный процессор будет выполнять 32-битные программы , иногда трудно узнать, какую из них я установил на свое устройство.
Есть программы, которые требуют этих знаний, например установщик Xposed Framework .
Что можно считать правильным методом , будь то ADB, командная строка или программное обеспечение?
Я привык делать на настольном Linux:
sudo uname -a
Может быть, есть какой-то эквивалент для Android?
Дополнительные данные:
Некоторые программы, которые должны информировать об этом, не совсем понятны для меня. Это пример некоторого отчета AIDA64. Даже если он показывает 32-разрядную версию, это информация об операционной системе? Я бы сказал, что речь идет только об оборудовании:
(Нажмите на изображение, чтобы увеличить; мой AIDA64 на испанском языке)
Вопрос распространяется на этот другой
источник
ro.product.cpu.abi
и связанные с нимro.product.cpu.abilist32
иro.product.cpu.abilist64
в выводе getprop. У меня нет 64-битного устройства, поэтому я не могу проверить несколько вещей. Есть также похожий вопрос по Quora здесь .Ответы:
uname -m
отобразит архитектуру работающего ядра . Это отличается от того, что ваше оборудование может работать.К сожалению, вы должны знать, какие архитектуры 32-битные, а какие 64-битные. Но вы можете легко это выяснить.
Например, мой м7 отображает
arm7l
. Быстрый поиск подтверждает, что это 32-битная архитектура, а это означает, что мое работающее ядро было скомпилировано как 32-битный исполняемый файл.источник
uname
вы получите-m The machine (hardware) type
. i.stack.imgur.com/DTueH.pnguname -m
.uname -m
можно обмануть. Некоторые важные подробности здесь: Может ли 64-разрядное аппаратное устройство работать под управлением 32-разрядной версии Android?