Привет, друзья! Давайте разберемся что такое ARM, X86 и какой файл нужен именно вам и вашему смартфону/планшету.
СОВЕТ! Если не хотите выяснять какая архитектура процессора у вашего устройства ARM или X86, то смело качайте обе версии и поочередно устанавливайте, какая-то точно успешно инсталлируется.
Файл с расширением APK (например avito_2020_lalala.apk) — это установочный файл (приложение или игра) для системы Андроид. Это как EXE файл для ОС Windows.
Если хотите разобраться какой файл качать ARM или X86, то инструкция ниже для вас. Всего бывают три типа установочных файлов для Android:
Если на нашем сайте не предлагается отдельно выбрать ARM или x86, то значит APK универсальный и подойдет для любых процессоров.
Узнать тип архитектуры ядра процессора можно только с помощью стороннего приложения: 1) Telegram. Да, да, установите этот мессенджер, откройте приложение и нажмите Меню (три полоски сверху) — Настройки и пролистайте вниз. В конце будет указан тип архитектуры ARM или X86.
2) Установить специализированное бесплатное программное приложение для определения ARM или X86, например CPU-Z.
В некоторых операционных системах Anroid в Настройках — Об устройстве можно также найти тип CPU, но это либо модифицированные сборки либо специализированные лаунчеры. В целом самый простой и удобный способ как определить ARM или X86 был описан выше.
X86 apk что это
В этой теме обсуждаются вопросы общие для всех Андроидов на платформе x86, конкретно проект портирования Android-х86, а также его братья, не имеющие отдельных тем обсуждения на нашем форуме. Android в виртуальную машину | Сайт и Форум проекта Android-х86 | Android от Intel
Загрузочную флешку или диск необходимо записать с помощью Rufus, UNetbootin, LiLi, или WinImage. UltraISO использовать не рекомендуется потому, что созданные им флешки мало где грузятся.
Раздел под Android рекомендуется форматировать в ext3 или ext4 (для версии 5.0 Lollipop и новее) чтобы иметь >4ГБ места под свои нужды и избежать проблем с SuperSU и другим софтом. Форматирование раздела лучше произвести до установки Android сторонним ПО (Acronis, GParted, др.): родной установщик не всегда справляется с этой задачей.
Тут default указывает номер пункта, котоый будет выбран автоматически после истечения timeout секунд. root и rootnoverify указывают с какого диска, и с какого его раздела загружать выбраную операционную систему. Как и в случае с default, нумерация начинается с нуля. Параметры загрузки прописываются в конец строки, которая начинается со слова kernel. Такими параметрами можно повлиять на многие аспекты работы Андроида с железом. К примеру настроить работу с внешним монитором.
GRUB 2 — следующая версия GRUB. Разработчики писали GRUB 2 «с нуля», чтобы добиться переносимости и модульности. Используется в образах Android-x86 для компьютеров с новым UEFI-BIOS. Может хранить свои настроки в файле grub.cfg либо menu.lst. Обычно этот файл лежит на отдельном системном разделе EFI (ESP). Типичное содержимое:
set timeout=60 set gfxmode=1024×768 terminal_output gfxterm
Подробное руководство по установке Android-x86
Эмулятор который идет в комплекте с Android SDK, не очень шустрый. Основная идея использовать VirtualBox + Android X86, для преодоления проблем с производительностью.
Что нам необходимо: Среда разработки Eclipse + Android SDK тут, а также VirtualBox.
Под катом много картинок, и процесс установки, а также некоторые полезные советы.
Создаем Виртуальную машину: Имя: Android-2.2-Generic Операционная система: Linux Версия: Linux 2.6 Память: 512 MB Жесткий диск: 3GB
В Настройках машины:
Свойства->Сеть Адаптер 1 — NAT (в виртуальной машине будет виден как eth0, для интернета). Адаптер 2 — Виртуальный адаптер хоста (в виртуальной машине будет виден как eth1, для управления ADB).
Подключите образ к виртуальной машине. И так сверимся какие параметры машины.
Запускаем виртуальную машину
Управление производится стрелками влево, вправо, вверх, вниз
По шагам как инсталлировать линукс:
В Этом образе идет много примеров Snake,NotePad из Eclipse будет не возможно будет установить свои, в самом низу статьи есть утилита для разрешения данной проблемы. Процесс установки завершен 7. Android-x86 is installed successfully. Создаем SD карту [Create a fake SD Card] size 2000 MB отключить CD-ROM Перегрузить систему Reboot
Если у вас не работает курсор мыши. Идем в Машина-> Выключить интеграцию мыши host + i ( клавиша host по умолчанию правый ctrl). Разблокируем экран потянув стрелку вверх
Настройка Сети По умолчанию эмулятор не может работать с двумя сетевыми адаптерами — не проблема.Нам нужен интернет + внутренний адрес для отладки. Идем в запуск приложений
Магический порядок root@android:/ # # netcfg # netcfg eth1 down # netcfg eth1 dhcp *action ‘dhcp’ failed (invalid argument)* *без этой комманды не выделялся адрес вообще* # netcfg eth1 up # netcfg Всё выглядит приблизительно так. Запоминаем адрес eth1 он будет нужен для adb.
Шаги по настройки сети с консолью к сожалению надо делать каждый раз, когда эмулятор стартуете по новой.
Теперь на компьютере переходим в папку где стоит Android-SDK, в вашей системе может другая папка C:\Program Files\Android\android-sdk\platform-tools\ Используем команду adb eth1 адрес, у меня был 192.168.56.101
Вывод будет подобный: C:\Program Files\Android\android-sdk\platform-tools>adb connect 192.168.56.101 * daemon not running. starting it now on port 5037 * * daemon started successfully * connected to 192.168.56.101:5555
Пример работающего приложения.
Как быть если хочу поставить NotePad,Snake и другие примеры можно поставить данную утилиту SystemApp_Remover_4_19.ap.
Процесс установки будет выглядеть приблизительно так. C:\Program Files\Android\android-sdk\platform-tools>adb install c:\temp\SystemApp_Remover_4.19.apk
Потом удаляете из списка системных приложений то с чем конфликтует Eclipse
p/p/s Это мой первый пост на Хабре, не судите строго.
Новое в версии 9.0-r2 (Android 9.0.0 Pie-x86) (25.03.2020):
Новое в версии 9.0-rc1 (Android 9.0.0 Pie-x86) (15.11.2019)
Первый релиз Android 9.0.0 Pie
Новое в версии 8.1-r1 (Oreo-x86) (15.01.2019)
Первый стабильный релиз Android-x86 8.1
Новое в версии 6.0-r3
Новое в версии 5.1-rc1
Версия 5.1-rc1 основана на Android 5.1.1_r24. Добавлены специфичные для x86 участки кода и исправлены проблемы стабильности и плавности работы.
Основные функции:
Новое в версии 4.4-r5
Android-x86 4.4-r5 включает исправления ошибок, обнаруженных в версии 4.4-r4. Решены проблемы со шрифтами hazi в графической библиотеке Mesa 10.5.9 на графических процессорах Intel 5-поколения.
Создание пакетов APK x86 и ARM APK с помощью компилятора Intel® и GNU gcc
Существуют устройства Android на процессорах с архитектурами наборов инструкций (ISA) ARM или x86. Различные архитектуры наборов инструкций не имеют двоичной совместимости, поэтому приложение, содержащее нативный код, должно содержать нативные библиотеки для каждой архитектуры. Одним из механизмов распространения таких приложений являются так называемые «толстые» пакеты приложений Android («толстые» APK).
В этой статье содержатся пошаговые инструкции по созданию такого «толстого» пакета APK, включающего независимые от архитектуры файлы для виртуальной машины Dalvik (Dalvik, 2013), а также библиотеки для разных архитектур. В статье описывается сборка нативной библиотеки приложения x86 с помощью Intel Integrated Native Developer Experience (INDE).
Для демонстрации используем пример hello-jni из дистрибутива NDK r10 (входящий в состав установки Intel INDE).
Подготовка среды сборки
2) для program files (x86). 3. Создайте новую переменную среды: JAVA_HOME=[jdk7-dir]. 4. Установите: пакет Intel Integrated Native Developer Experience должен быть установлен в [inde-dir]. 5. Добавьте эту папку в переменную среды PATH: каталог [ant-dir]\bin для использования средства ant (расположение [ant-dir] по умолчанию: [inde-dir]\IDEintegration)
Сборка из командной строки
В этом разделе содержатся инструкции по созданию пакетов APK для поддержки устройств Android с архитектурой ARM и x86 в среде сборки с командной строкой. Откройте окно командной строки или окно терминала в Linux; перейдите в папку примеров Android NDK «hello-jni» [ndk-dir]\samples\hello-jni; выполните следующие действия. Примечание. Все средства, перечисленные в разделе выше, должны быть доступны из этого окна.
1. Настройка приложения Выполните следующую команду в папке hello-jni для создания файла build.xml, который будет впоследствии использован для сборки примера.
Примечание.—target android-19 соответствует версии Android 4.4 (KITKAT).
2. Очистка рабочей области приложения Используйте следующую команду для очистки всей рабочей области, включая библиотеки, для всех архитектур ISA.
Примечание: V=1: печать всех команд по мере их выполнения. APP_ABI=all: принудительная очистка всех промежуточных файлов для всех целевых платформ. Если не указать этот параметр, будет очищен только файл для целевой платформы armeabi.
3. Сборка двоичных файлов для архитектуры ARM Используйте указанную ниже команду для сборки двоичного файла приложения для архитектуры ARM:
Примечание: APP_ABI=armeabi-v7a: настройка компиляции для целевой платформы ARM. NDK_TOOLCHAIN=arm-linux-androideabi-4.8: вместо используемого по умолчанию GNU gcc 4.6, используется gcc 4.8. Двоичный файл приложения (libhello-jni.so) создается по адресу .\libs\armeabi-v7a\libhello-jni.so.
4. Сборка двоичных файлов для архитектуры x86 с помощью компилятора Intel Используйте указанную ниже команду для сборки двоичного файла приложения для архитектуры x86 с помощью компилятора Intel.
Примечание: APP_ABI=x86: настройка компиляции для архитектуры x86. NDK_TOOLCHAIN=x86-icc: замена используемого по умолчанию компилятора gcc 4.6 на компилятор Intel C/C++ для Android. NDK_APP.local.cleaned_binaries=true: отмена удаления библиотеки в каталоге libs/armeabi. См. примечания ниже. Двоичный файл приложения (libhello-jni.so) создается по адресу .\libs\x86\libhello-jni.so.
5. Подготовка пакета приложения (APK) После сборки всех двоичных файлов для каждой целевой платформы Android убедитесь, что папка libs\[targetabi] содержит требуемые библиотеки для каждой целевой архитектуры. Чтобы упростить создание пакета и избежать его подписания, используйте следующую команду для создания отладочного пакета.
После этого новый пакет HelloJni-debug.zip появится в папке .\bin. Его можно запустить в имитаторах x86 или ARM, поддерживающих API уровня 19 или выше, содержащихся в Android SDK. Пакет HelloJni-debug.zip содержит библиотеки для двух целевых платформ: ARM EABI v7a и x86.
Сборка в интегрированной среде разработки Eclipse
1. Откройте Eclipse и загрузите пример [inde-dir]/IDEintegration/NDK/samples/hello-jni. В меню выберите File > New > Project > Android. Нажмите кнопку Android Project from Existing Code. В поле Root Directory нажмите кнопку Browse. и выберите папку [ndk-dir]/samples. Затем щелкните Deselect All и выберите только нужный проект: hello-jni Снимите флажок Copy projects into workspace. Нажмите кнопку Finish.
2. Добавьте в проект поддержку нативного кода. Щелкните имя проекта правой кнопкой мыши и выберите Android Tools > Add Native Support. Нажмите кнопку Finish. Примечание. Если после этого шага на консоли появляется сообщение об ошибке Unable to launch cygpath, этот шаг можно пропустить, что не повлияет на проект.
В этом же окне свойств проекта установите для параметра Configuration значение x86_icc. Снимите флажок Use default build command. Добавьте следующий текст в поле Build command: ndk-build APP_ABI=x86 NDK_TOOLCHAIN=x86-icc. Щелкните Apply. В этом же окне свойств проекта установите для параметра Configuration значение arm_gcc. Снимите флажок Use default build command. Добавьте следующий текст в поле Build command: ndk-build APP_ABI=armeabi-v7a NDK_TOOLCHAIN=arm-linux-androideabi-4.8. Нажмите кнопку Apply, затем нажмите кнопку ОК.
4. Очистка всей рабочей области приложения Если файл Application.mk существует в папке [eclipse-workspace-dir]\HelloJni\jni, убедитесь, что он не содержит следующую строку. NDK_APP.local.cleaned_binaries=true Щелкните проект правой кнопкой мыши и выберите Build configurations > Clean all….
5. Создайте файл Application.mk в папке [eclipse-workspace-dir]\HelloJni\jni, если он не существует, и убедитесь, что он содержит следующую строку. NDK_APP.local.cleaned_binaries=true
6. Соберите двоичный файл для целевой архитектуры ARM* с помощью gcc и для целевой архитектуры x86 с помощью компилятора Intel. Щелкните проект правой кнопкой мыши и выберите Build Configurations > Build Selected. Выберите arm_gcc и x86_icc. Нажмите кнопку ОК. Проверьте выходные двоичные файлы по следующим адресам. [eclipse-workspace-dir]\HelloJni\libs\armeabi-v7a\libhello-jni.so [eclipse-workspace-dir]\HelloJni\libs\x86\libhello-jni.so
7. Создание неподписанных пакетов приложений Щелкните проект правой кнопкой мыши и выберите Android Tools > Export Unsigned Application Package.
Параметр NDK_APP.local.cleaned_binaries=true для отключения удаления собранных ранее библиотек может не работать в будущих версиях NDK. См. [ndk-dir]/build/core/setup-app.mk для получения информации о том, как отключить действия удаления для установленных двоичных файлов.
Прочие статьи по теме и ресурсы
Дополнительные сведения о средствах Intel для разработчиков Android см. на сайте Intel Developer Zone for Android.