Как ускорить работу Android эмулятора

By 31.07.2013 Август 8th, 2019 Android

Самая первая головная боль любого Android разработчика — это медленная работа стандартного эмулятора. Тестировать приложения на нем не очень удобно — эмулятор может не запускаться, тормозить и периодически зависать.

Эта проблема не новая, ее решают с момента появления андроида.

Если у вас та же проблема — вы узнаете как ее можно решать разными способами.

 

Расскажу как обстояли дела с эмулятором у меня, потому что у всех ситуации разные.

У кого-то эмулятор может заработать сразу, кому-то придется немного помучиться.

Я попал где-то в золотую середину — эмулятор сразу заработал, но с периодическими зависаниями, хотя тестировать и разрабатывать приложения можно было без проблем.

Но мне не нравилось то, что временами эмулятор зависал (приходилось просто сидеть и ждать) или вылетал (помогал перезапуск эмулятора).

Здесь нужно отметить, что ноутбук у меня был достаточно мощный на тот момет (с SSD дисками, 4 Гб RAM, последний процессор Core i7), но и этого не хватало для нормальной работы Android эмулятора.

***

Ниже предлагается список решений (я попробовал не все)

 

Cамый простой совет — купить мощный стационарный компьютер (не ноутбук), с 8 Гб ОЗУ, последним процессором, быстрыми жестким дисками и видеокартой помощнее.

Подходит для тех, у кого есть деньги и кто занимается программированием профессионально.

(В будущем планирую себе взять отдельную машину для программирования, а мелкими делами заниматься на ноутбуке)

 

Использовать готовые образы Android вместе с VirtualBox:

В основном все пользуются именно этим способом, т.к. он решает многие проблемы (эмулятор практически не виснет и не вылетает).

Вы скачиваете образ нужной версии Android, запускаете ее на виртуальной машине и подключаетесь к ней с помощью стандартного инструмента adb, чтобы можно было запускать приложения из eclipse.

 

Наиболее часто используемые образы:

1) http://www.android-x86.org/ — один из старых и знаменитых проектов, содержит все последнии актуальные версии операционной системы Android

В интернете много видеороликов и статей, как установить образ и разрабатывать под него.

 

2) http://www.genymotion.com/ — бывший проект AndroVM, который перешел в платную версию (бесплатной вполне хватает для разработки приложений).

Пользуюсь этим способом в данный момент, все работает шустро и довольно стабильно.

 

Видео по установке и запуску Genymotion:

 

Если вы используете стандартный эмулятор:

 

 Использовать Snapshot (сохранение состояния)

Можно один раз запустить эмулятор и сохранить его в snapshot — специальный файл, с которого будет запускаться эмулятор в следующий раз.  Если в первый раз запускается долго — следуюшие запуски из сохраненного состояния будут производиться намного быстрее.

Нужно проставить соответствующие настройки для AVD:

 

 Использование Intel® Hardware Accelerated Execution Manager (HAXM)

Суть этого способа в том, чтобы скачать специальный образ от Intel, который эмулирует ОС Android на x86.

Все необходимое можно установить с помошью Android SDK Manager.

Здесь в двух частях описано что это такое и как установить:

1) http://www.developer.com/ws/android/development-tools/supercharge-your-android-emulator-speed-with-intel-emulation-technologies.html

2) http://www.developer.com/ws/android/development-tools/haxm-speeds-up-the-android-emulator.html

Ссылка на официальный сайт: http://software.intel.com/ru-ru/articles/intel-hardware-accelerated-execution-manager

 

Использовать настройку Use GPU вместе с HAXM (работает начиная с версии Android 4.2)

Этот способ позволяет использовать ресурсы вашего компьютера для обработки графики в эмуляторе Android.

Вы сразу заметите разницу в скорости и качестве картинки с GPU и без него.

 

Нужно поставить одну галочку при запуске:

 

  Установить последние версии драйверов для вашего компьютера/ноутбука

Желательно всегда иметь последние версии драйверов, т.к. часто были проблемы именно из-за этого.

Например различные ошибки при проигрывании звуков в программах, полосы посередине экрана эмулятора.

 

 По возможности увеличить RAM

Сейчас, чтобы программировать профессионально, уже недостаточно машин с 4 Гб ОЗУ, нужно как минимум 8 Гб.

Поэтому, если есть возможность, добавьте оперативную память, работа эмулятора (особенно на базе VirtualBox) заметно ускорится.

 

Перед запуском эмулятора закрывать все лишние программы, чтобы освободить оперативную память

Если оперативной памяти мало — нужно закрыть все лишние приложения, оставить только среду разработки и эмулятор Android.

Я в последнее время всегда закрываю все лишнее и оставляют только инструменты для разработки.

Вы можете посмотреть, как быстро заканчивается свободная оперативная память после запуска эмулятора и eclispe (в Windows 7, в Диспетчере задач — Монитор ресурсов)

 

 Если работаете на ноутбуке — подключать его в сеть (не работать от батареи)

Обязательно включайте в сеть ноутбук, т.к. на батарее Adnroid эмулятор (да и сам ноутбук в целом) работает в сберегающем режиме.

Это приводит к частому зависанию эмулятора.

Если у вас есть на ноутбуке есть различные режимы — поставьте самый производительный (High Performance) (через  Пуск -> Выполнить (Run) -> powercfg.cpl, или просто нажать Win+R и команду powercfg.cpl)

 

Вот как это выглядит у меня:

 

Увеличить RAM для AVD, отключить SD карту

 

***

Здесь я перечислил не все способы, т.к. их намного больше.

Но уже этих хватает, чтобы улучшить жизнь Android программиста.

Лично я сейчас пользуюсь образом от genymotion.com, который я описывал выше, он меня вполне устраивает и по скорости и по стабильности.  Тем более этот проект сейчас довольно активно развивается.

 

Нажмите на кнопки ниже, чтобы поделиться с друзьями:

Author Тимур Батыршинов

Основатель обучающего центра «JavaBegin». Главный тренер. Обучил более 46000 человек (онлайн и оффлайн), провел более 900 онлайн-вебинаров. Опыт разработки на Java и других языках — более 15 лет. Автор более 50 курсов по разным направлениям Java: основы, веб, Android, Spring, iOS, Angular, React и многие другие. Все курсы автора

More posts by Тимур Батыршинов

3
Оставить комментарий

  Подписаться  
Уведомление о
rating-man

Спасибо! За статью! Написано отлично. В силу своих специфичных сборок каждого компьютера могут подойти различные способы. Про компьютер все правильно, нужно покупать нормальную машину. У меня в силу старой операционной системы Windows XP подошел вариант 1) с моими 2 Гц ОЗУ. Конечно уходит время на подключение подключается вручную через abd посредством консоли, но работает достаточно быстро. Вариант genymotion не подошел, выдает ошибку при запуске виртуального девайса. Вероятно из-за компьютера (какого-то конфликта). Для тестирования программ еще приобрел планшет с возможностью звонков Asus, но эмулятор тоже нужен. Реальное устройство важно, тут все быстро и реальная работа. Да, создание программ без нормального тестирования… Подробнее »

Ruslan

Вы меня простите, но статья полна банальностями. Особенно порадовало — купите компьютер получше.