Как быстро настроить Android Emulator для Android 10 (API 29)

Короткий ответ: для быстрой локальной разработки используйте x86_64 system image (google_apis или google_apis_playstore при необходимости Play), включите аппаратное ускорение (HAXM/WHPX/KVM/Hypervisor.framework), выделите 2–4 GB RAM и настройте GPU в режим auto или host. Ниже — конкретные команды и рекомендации для Windows, Linux и macOS (Intel/Apple Silicon).

Оглавление {{TOC_AUTOMATIC}}

Что нужно установить перед созданием AVD

Установите Android Studio или только cmdline-tools + SDK. Через SDK Manager/cli проверьте наличие:

  • platform-tools
  • platforms;android-29
  • emulator
  • нужный system image для API 29 (см. раздел «Как выбрать образ»).

Примеры установки через sdkmanager:

sdkmanager "platform-tools" "platforms;android-29" "emulator" \
  "system-images;android-29;google_apis;x86_64"

(для Play Store замените пакет на system-images;android-29;google_apis_playstore;x86_64).

Как выбрать образ системы для Android 10 (быстрое руководство)

Выбор зависит от задач:

  • default / AOSP — чистая система без Google сервисов; удобно для unit/системных тестов.
  • google_apis — содержит Google Play services (нельзя устанавливать через Play, но доступны сервисы API).
  • google_apis_playstore — включает Play Store; нужен для тестов установки и поведения приложений через магазин (ограничения на root).
  • Архитектура:
    • x86_64/x86 — лучший выбор на Intel/AMD (быстрое аппаратное ускорение).
    • arm64-v8a — рекомендуем на Apple Silicon; на Intel/AMD медленнее (полная эмуляция).

Рекомендация:

  • Разработка и отладка: x86_64 + google_apis (или playstore если нужен магазин).
  • Apple Silicon (M1/M2): arm64-v8a образ из "Other Images" в AVD Manager.

Сравнение образов (коротко)

ОбразКогда брать
default (AOSP)Тесты без Google
google_apisНужны Google Services
google_apis_playstoreТест установки/магазина
x86_64Быстро на Intel/AMD
arm64-v8aДля Apple Silicon

Если нужен root-доступ для отладки — выбирайте образ без Play Store (default или google_apis); Play-образы обычно не дают root.

Практическая сборка AVD: команды и опции

  1. Установка пакетов:
sdkmanager "platform-tools" "platforms;android-29" "emulator" \
  "system-images;android-29;google_apis;x86_64"
  1. Создание AVD (пример):
avdmanager create avd -n "Android10_x86_64" \
  -k "system-images;android-29;google_apis;x86_64" \
  --device "pixel_3"
  1. Запуск эмулятора:
emulator -avd Android10_x86_64

Полезные опции:

  • -gpu auto|host|swiftshader_indirect — авто или host для производительности; software для совместимости.
  • -no-snapshot-load — cold boot.
  • -no-window — headless, полезно для CI.

Особенности по ОС:

  • Windows: используйте WHPX (Hyper-V) или Intel HAXM (если Hyper-V отключён).
  • Linux: включите KVM и запустите эмулятор с KVM.
  • macOS Intel и Apple Silicon: Hypervisor.framework; на M1/M2 используйте arm64 образ.

Настройки производительности и частые тонкости

  1. Аппаратное ускорение — ключевой фактор. Проверьте включение виртуализации в BIOS/UEFI и драйверы (HAXM/WHPX/KVM).
  2. RAM/CPU: выделяйте 2048–4096 MB RAM и 2 vCPU для обычных задач. Не выделяйте >50% ОЗУ хоста.
  3. Диск: ставьте SDK и AVD на SSD для быстрой загрузки.
  4. GPU: начните с -gpu auto; при артефактах пробуйте host или swiftshader_indirect.
  5. Snapshots/Quick Boot ускоряют старты, но для достоверных тестов делайте cold boot.
  6. AR/Camera/Hardware features: некоторые функции (ARCore) поддерживаются только для x86/x86_64 образов.

ARM-образы на Intel/AMD работают медленнее — не используйте их для повседневной разработки, если не тестируете нативные ARM-библиотеки.

Частые ошибки

  • "System image not found" — указали неверный идентификатор пакета; проверьте имя в списке sdkmanager.
  • Эмулятор медленный — проверьте аппаратное ускорение и ABI (x86_64 vs arm).
  • Проблемы с GPU/артефактами — смените -gpu режим или обновите драйвер видеокарты.
  • Нельзя установить приложение из Play Store — попробуйте x86_64 Play-образ или другой API level; некоторые приложения несовместимы с 32‑битными образами.

FAQ

  • Какой образ выбрать для быстрого старта разработки?
    • x86_64 google_apis (или google_apis_playstore, если нужен магазин).
  • Нужен ли мне HAXM?
    • На Intel хостах HAXM или WHPX/KVM обеспечивает аппаратное ускорение; на macOS используется Hypervisor.framework.
  • Как запустить эмулятор на Apple Silicon?
    • Скачайте arm64-v8a образ API 29 и создайте AVD. x86 образы там работают медленнее или не поддерживаются нативно.
  • Можно ли использовать эмулятор в CI?
    • Да: запускайте с -no-window и без quick-snapshots, используйте headless образ и cold boot для стабильности.

Быстрый чек-лист перед запуском:

  • Установлены emulator + platforms;android-29 + выбранный system image.
  • Включена виртуализация и установлено аппаратное ускорение.
  • Выбрана правильная архитектура (x86_64 для Intel/AMD, arm64-v8a для Apple Silicon).
  • Настроены RAM (2–4 GB) и GPU (auto/host) в AVD.

Если хотите, подготовлю готовые команды и оптимальные значения RAM/CPU для вашей ОС и конфигурации — напишите, какая у вас ОС и процессор.