Введение

Часто бывает необходимость проверить работу свеженаписанного приложения на устройстве. Но вполне может оказаться, что устройства под рукой нет. Или нет устройства с определенными параметрами (правда, это больше относится к размеру/разрешению экрана). Что же делать в этом случае? К счастью, альтернативы есть. Android-сообщество и разные компании предлагают на выбор несколько вариантов замены android-устройств для разных целей. Я кратко расскажу о следующих:

  • Эмулятор в составе SDK
  • Genymotion
  • Android x86
  • Bluestacks

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

Эмулятор в составе SDK

Сайт: http://developer.android.com/sdk/index.html Самый очевидный способ подмены устройства. Если занимаешься разработкой под Android — эмулятор точно есть.

Использование

Для использвания достаточно открыть AVD Manager из эклипса или в консоли

/path/to/sdk/tools/android avd 

создать свой AVD (Android Virtual Device) и запустить. Более подробно процесс описывать не буду, все достаточно просто. Однако не обошлось без особенностей. ARM-эмуляторы до ужаса медленные. Что-то нормально проверить практически невозможно, особенно на не очень сильном железе (потому что эмуляция процессора с другой архитектурой). Тут на помощь может прийти технология Intel HAXM, однако это чревато тем, что платформо-зависимый код (который должен работать под ARM) может не работать, поскольку используется x86. Скриншоты AVD manager Параметры запуска Сам эмулятор

Плюсы
  • Кроссплатформенное решение
  • Входит в состав SDK, не нужны сторонние тулы
  • Конфигурируемый (размер памяти, подключение камеры и т.д)
  • Доступ по telnet для настройки параметров сети, батареи и т.д.
  • Плагин для Eclipse, легкий доступ через adb
  • Обновляется сразу после выхода новой версии Android
Минусы
  • Медленный, если не использовать HAXM
  • Не ARM, если использовать HAXM
  • Нет эмуляции Bluetooth, OTG, наушников и некоторых других железных параметров

Genymotion

Сайт:http://www.genymotion.com/ Проприетарная реализация, выросшая из проекта AndroVM. По сути, виртуальная машина на VirtualBox с дополнительными фишками вроде своих контролов, расширенной настройки и т.д. Достаточно удобен, быстр, много возможность, коммандлайн тулы, Java API для тестов. При создании устройства из сети выкачивается его образ. APK можно устанавливать, перетянув их на окно с виртуалкой. Скриншоты Окно работающего девайса Создание виртуального девайса Главное окно приложения

Плюсы
  • Кроссплатформенное решение
  • Быстрый
  • Много дополнительных тулов (контроль заряда, акселерометра, API для тестов и т.д.)
  • Плагин для Eclipse, легкий доступ через adb
Минусы
  • Платный для компаний, и это главный минус
  • Не ARM
  • Достаточно долгий выход актуальных версий Android

Android x86

Сайт:http://www.android-x86.org/ Проект по портированию Android на платформу x86. Распространяется в виде образа iso, можно запустить/установить в виртуальной машине, при большом желании можно даже поставить на живую машину с x86 процессором (на ноутбук, например). Работает быстро, но есть куча проблем из-за того, что это виртуальная машина. Например, привязывние мыши внутри окна виртуалки, доступ к adb только по сети и т.д. Для использования в VirtualBox нужно отключать Mouse Integration, иначе в виртуальной машине не видно курсора. Для подключения adb нужно выполнить

adb connect ip.add.res.s 

IP-адрес можно узнать, нажав в машине Alt+F1 и введя netcfg. Вернуться в графический режим — Alt+F7. Скриншоты Главное окно: Консоль с IP-адресом:

Плюсы
  • Кроссплатформенное решение (везде, где есть VirtualBox)
  • Быстрый
Минусы
  • Неудобный доступ к adb
  • Минусы, связанные с использованием VM — привязка мыши, например
  • Не ARM
  • Очень долгий выход актуальных версий

Bluestacks

Сайт:www.bluestacks.com Позиционируется как плеер приложений для Windows, Mac и TV. Умеет запускать приложения, имеет доступ к маркету. Неудобен для разработки и тестирования — apk ставятся тулом из комплекта, но доступ к adb можно получить. Однако для запуска приложений может быть полезен. Для подключения через adb:

adb connect 127.0.0.1 

Скриншоты Запуск: Главное окно:

Плюсы
  • Кроссплатформенное решение (правда, только Mac и Windows)
  • Быстрый
Минусы
  • Неудобно ставить приложения
  • Непонятно, что с версиями android (2.3 под OS X, под Windows ставился 4.0)
  • Нет под linux

Вывод

Получается, что для некоторых ситуаций можно обойтись и без девайса. Однако не стоит забывать, что во многих случаях железо эмуляторов отличается от реального, да и прошивки реальных устройств тоже могут подбросить сюрпризов. Поэтому эмуляторы — всего лишь для начальной проверки. 383 233.2k 383

The Android Developer Challenge is back! Submit your idea before December 2.

An Android Virtual Device (AVD) is a configuration that defines the characteristics of an Android phone, tablet, Wear OS, Android TV, or Automotive OS device that you want to simulate in the Android Emulator. The AVD Manager is an interface you can launch from Android Studio that helps you create and manage AVDs.

To open the AVD Manager, do one of the following:

Григоренко Г. Н.
Уроки по программированию мобильных устройств на основе ОС Android
16 сентября 2015

Android Studio. Создание виртуального устройства AVD

Виртуальное устройство Android (Android Virtual Device, AVD) позволяет разработчику тестировать свои приложения, не имея под рукой телефона с Android. Можно создавать несколько эмуляторов – устройств AVD, с различными видами конфигурации, чтобы эмулировать различные  типы реальных телефонов.

Стандартный эмулятор  работает достаточно медленно. Если на Вашем ПК установлен процессор Intel с поддержкой   технологии виртуализации VT-x (Intel Virtualization Techology for x86 VT-x) (данные параметры устанавливаются в BIOS),  то достаточно просто можно повысить его производительность.  Для этого необходимо с помощью SDK Manager инсталлировать следующие пакеты:

  • Intel x86 Atom System Image
  • Intel x86 Emulator Accelerator (HAXM)

Образ Intel x86 Atom System Image будет доступен при создании и настройке конкретного эмулятора

Далее необходимо установить пакет Intel x86 Emulator Accelerator (HAXM). Он находится здесь sdkextrasintelHardware_Accelerated_Execution_Manager.

Установка Intel HAXM

В процессе установки вам предложат определить объем выделяемой оперативной памяти. Вы можете оставить значение, предложенное по умолчанию. Если в процессе работы вы захотите изменить это значение – запустите установку еще раз. 

Если режим не включен или не поддерживается, то появится окно сообщения: 

В этом случае проверьте настройки в BIOS, возможно виртуализация поддерживается вашей системой, но по умолчанию отключена.

Размеры и разрешение экрана

Общие сведения о размерах  и разрешении экранов нам понадобятся при создании виртуального устройства.  Приведем основные сведения.

Существует 4 диапазона размеров экранов:

small— QVGA (320×426 dp)

normal— HVGA (320×470 dp)

large— VGA (480×640 dp)

xlarge—  HVGA (720×960 dp), доступно с API 9 (Android 2.3)

и следующие  диапазоны плотностей экранов:

Плотность пикселей на дюйм Соотношение dp к px
ldpi — 120dpi 1 dp = 3/4 px
mdpi — 160dpi 1 dp = 1 px
hdpi — 240dpi 1 dp = 1.5 px
xdpi — 320dpi 1 dp = 2 px
xxdpi — 480dpi (с API 16, Android 4.1) 1 dp = 3 px
xxxdpi — 640dpi (с API 18, Android 4.3) 1 dp = 4 px
nodpi — «как есть»
tvdpi — 1.33 * mdpi 1 dp = 1.33 px

Вот несколько примеров:

  • QVGA (Quarter Video Graphics Array) 240×320 dp – низкая плотность, размер 2-3,5″;
  • WQVGA (Wide Quarter Video Graphics Array) 240×400 dp – низкая плотность, размер 2-3,5″;
  • HVGA (Half Video Graphics Array) 320×480 dp – средняя плотность, размер 3-4″;
  • WVGA800 (Wide Video Graphics Array) 480×800 dp) –высокая плотность, размер 4-7″;
  • WVGA854 (Wide Video Graphics Array) 480×854 dp) –высокая плотность, размер 4-7″;

Создание виртуального устройства

После установки образа эмулятора Android для x86 необходимо создать новое виртуальное устройство с помощью Android Virtual Device Manager. Для этого: 

  1. Запускаем ADV Manager. Меню Tools|Android|AVD Manager.Примечание. Если запустить ADV Manager из папки установки SDK, то появится более простое и знакомое диалоговое окно по IDE Eclipse.
  2. Выбираем создание устройства «+Create Virtual Device«

На этом экране из возможных  типов эмуляторов мобильных устройств выбираем тип Phone  и переходим к выбору эмулятора модели телефона.

В начале разработки  приложения, как правило, наиболее важным параметром эмулятора является скорость его работы, поэтому  следует выбрать достаточно простой и быстрый эмулятор.  На последующих этапах разработки приложения можно перейти на эмулятор, который наиболее  точно моделирует работу реального устройства  или использовать реальное устройство. В этой связи для учебных целей выбираем устройство: Nexus One (3.7” 480×800 hdpi) или  Nexus S(4.0″480×800 hdpi). Эти эмуляторы требует немного оперативной памяти (500 mb и 375 mb) и поэтому достаточно быстро работают. Следует помнить, что «крутой эмулятор» потребует большие ресурсы ПК, что приводит к медленной его работе, а иногда он может просто не запуститься.   

Далее  жмём  кнопку «Next»  и переходим на экран, предлагающий выбрать версию операционной системы для эмулятора.

У Google издавна сложилась традиция называть разрабатываемые версии операционных систем тремя словами:

KitKat — Key Lime Pie(Лаймовый Пирог)

Lollipop — Lemon Meringue Pie(Лимонный Пирог Безе)

MNC — Macadamia Nut Cookie (Печенье из Ореха Макадамия). 

Поскольку на  ПК, на котором будет запускаться эмулятор, установлен процессор Intel с поддержкой технологии виртуализации VT и используется ОС Windows 7 x86,  то выбираем  Lollipop уровень API 22, ABI x86, целевая версия Android 5.1.1.

Здесь:

ABI — двоичный интерфейс приложения (Application binary interface)- это образ аппаратной части выбираемой аппаратной платформы создаваемого виртуального устройства. Здесь как раз и следует выбирать x86 образ, который был установлен нами ранее.

Target — целевая версия Android это версия API, на которую ориентировано приложение. Выберем самую новую.

Лучше всегда использовать более новую версию потому, что она содержит более новую версию компилятора и дополнительные проверки, позволяющие в автоматическом режиме находить часто встречающие ошибки. Кроме того:

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

Если необходима поддержка более старых версий, то необходимо перед созданием виртуального устройства скачать и установить соответствующие пакеты (точно так же как описана установка примеров из SDK приведенная выше).

Если мы ошибочно выберем образ системы, который нами не установлен, то будет выдано соответствующее  предупреждение :  Consider using  an x86 system image for better  emulator performance (рассмотрите  использование  образа системы x86  для повышения производительности эмулятора). Соответствующий экран представлен ниже. 

Переходим к следующему экрану. Здесь при необходимости можно внести изменения в характеристики создаваемого виртуального устройства. 

Обратим внимание на следующие параметры:

AVD Name — Имя устройства. Можно задать какое нравится, рекомендую указывать что-то простое, на латинице, без пробелов, например, имя устройства и номер AIP: Nexus_S_API22.

Startup size and orientation

Scale – позволяет изменить размер эмулятора на экране монитора.Orientation  — позволяет задать книжную или альбомную ориентацию

Emulated performance — производительность эмулятора.

Use Host GPU — использование аппаратного ускорения графики при работе эмулятора. Рекомендуется включить данную опцию — так графика в эмуляторе будет работать быстрее.Snapshot — снимок системы — при включении этой опции эмулятор виртуального устройства будет сохранять свое состояние при рестарте, т.е. после включения (загрузки)  получаем устройство в том же состоянии как перед выключением (выгрузкой) эмулятора. Данную опцию пока трогать не будем, оставим ее в выключенном состоянии.

Camera — камера

Front Back — включение эмуляции камер (фронтальной и основной), при желании можно вывести через них картинку с web-камеры. Оставим значения по умолчанию — None, так как в простых учебных примерах камеры практически не применяются, а «боевые» приложения, использующие «сложные» аппаратные возможности надежнее отлаживать на реальных устройствах.

Memory and Storage — опции памяти  и внутреннего хранилища.

Здесь указывается, сколько оперативной (RAM) памяти будет доступно в эмуляторе, а так же размер VM Heap — количество доступной памяти для одного экземпляра приложения. Рекомендуется эти значения указывать исходя из ресурсов реальных устройств, поэтому оставим значения по умолчанию (512 и 32). Однако, при увеличении этих параметров приложение в эмуляторе будет работать быстрее, но следует помнить что вы разрабатываете приложение для реального устройства, где объем оперативной памяти жестко задан производителем устройства и поменять его невозможно.

Internal Storage — внутреннее хранилище. Здесь указывается объем внутреннего устройство хранения, опять таки — указывайте значение, которое возможно на реальном устройстве.

SD Card — SD карта. Здесь, если требуется, можно указать параметры используемой виртуальной SD карты памяти (которые используются на реальных устройствах повсеместно, для расширения внутреннего хранилища). Оставим поле Size (размер) пустым — пока что не будем использовать SD карту. Для удобства программиста здесь же можно указать готовый образ SD карты в файле, если такая необходимость есть.

Frame Frame – имитировать ли внешний вид  реального устройства.

Skin — скин эмулятора. Включение отображения аппаратных элементов управления в окне эмулятора (hardware buttons). Так же воспользуемся данным пунктом, что бы видеть кнопки устройства в окне эмулятора.

Keyboard — клавиатура. Включение представления аппаратной клавиатуры (hardware keyboard). Воспользуемся данным пунктом.

Теперь осталось запустить и проверить все ли настроено верно. Выбираем созданный эмулятор и запускаем его кнопкой «Start”. 

Далее  идем в настройки  и выполняем следующие действия:

  • Устанавливаем  русский язык
  • Проверяем работает ли эмулятор в режиме поддержки технологии виртуализации ( образ x86)

Если все было сделано правильно, то для нашего примера, в поле «Модель» мы увидим строку «Android SDK Build for x86«. 

Ранее мы писали о том, как установить и настроить работу Android SDK Manager – программы, которая тесно взаимосвязана с Android Virtual Device Manager.

AVD Manager – это инструмент, который является частью Android Studio и предназначен для настройки, проверки и обновления SDK компонентов в среде разработки приложений под операционную систему Android. Именно с этим приложением у пользователей ПК возникает ряд сложностей. Поэтому, чтобы установить и настроить AVD Manager на своём ПК, стоит учесть несколько рекомендаций.

Читайте также:Windows Phone Device Manager – мультифункциональный менеджер для администрирования устройств

Содержание:

При подключении мобильного устройства к ПК менеджер AVD определяет версию Android-системы и выдает рекомендации касательно необходимых библиотек. Также с помощью AVD Manager можно создать образ системы со всеми установленными приложениями.

Скачать Android Virtual Device Manager можно по ссылке. Инструмент является частью Android Studio.

Для того, чтобы запустить AVD Manager, стоит выполнить следующие действия.

  • Устанавливаем Android Studio и нажимаем «Инструмент», «AVD Manager». О том, как установить Android Studio читайте по ссылке.
  • Откроется новое окно менеджера. В нем будут отображены все виртуальные образы, которые вы создали.
  • В AVD можно создать своё виртуальное устройство или изменить параметры уже имеющегося.

Чтобы создать новое вириальное устройство выполняем следующие действия:

  • Запускаем AVD Manager и нажимаем «Create Virtual Device».
  • В следующем окне выбираем категорию устройства, размеры дисплея и расширение. Жмём «Далее».
  • Далее нужно выбрать версию Android. Если какой-то версии нет, стоит нажать на кнопку «Download» или поискать сборку во вкладках выше. Не стоит использовать образы версий, которые ниже заявленных для определённого гаджета.
  • Появится окно проверки конфигурации системы. В нем нужно только указать ориентацию экрана. Нажимаем «Finish».

Виртуальное устройство под управлением ОС Android готово. Теперь на нём можно проверять разработанные программы.

  • Вы здесь:  
  • Главная
  • Программер
  • Android
  • Создание эмулятора Android, настройка AVD
Категория: Android
Опубликовано: 04 сентября 2016

Давайте создадим эмулятор android, для тестирования в процессе написания приложений. В прошлый раз мы настроили SDK в среде Android Studio , обновили версии, пакеты OS Android. Впрочем, можно пользоваться реальным устройством: телефон, планшет.

Создание эмулятора Android, настройка эмулятора Android

Иногда это оправдано, к примеру, если вы создаете android APK для себя. На телефоне включаем в меню режим  разработчика, подключаем устройство по USB кабелю к компьютеру, и при сборке приложение будет устанавливаться на смартфон, тестируйте на здоровье. Можно тестировать по WIFI, через adb, лично я ставил на телефон ADB Wireless Pro 1.9.2,

 при запуске выбирал тип подключения wifi,  а на компьютере в total commander, в разделе плагины запускал ADB,

 указывал ip и port,

 и соединялся.

Читайте также: Intent — Android приложение с несколькими Activity

Далее Android Studio по wifi устанавливал тестируемый apk на телефон. Можно и через консоль но «это не наш метод». Зачем нужен эмулятор Android, спросите вы? А затем, что версий андроид и моделей устройств просто зоопарк целый, и с каждым днем становится все больше. Представьте если вам нужно писать для «старенькой» модели телефона или планшета, а у вас его нет в наличии, не покупать же. Этот способ подходит для крупных компаний, профессионально занимающихся разработкой приложений для android, с бюджетом, стремящимся к бесконечности. Мы же из простых, мелкопоместных, будем юзать эмулятор, он до определенной степени предоставляет возможность выбора версий и моделей андройдов, хотя он память жрет прилично..

Запустим Android Studio, в верхнем меню нажмем Tools->Android->AVD Manager,

в нем нажмем кнопку внизу с зеленым плюсом Create Virtual Device…

Новое виртуальное устройство

Читайте также: Android приложение за 5 минут. Часть 2

В Category выберем Phone, вроде там это по умолчанию, для примера эмулятор будем создавать по образу и подобию Galaxy Nexus, жмем Next

Android Studio, исходя из установленных у меня в системе образов, рекомендовала мне Marshmallow версия 6.0,

так как я не скачал Android N 7.0, впрочем, для тестов мне и этого достаточно

на третей вкладке Other Images, можно выбрать другую версию, хотите можете поэкспериментировать) жмем Next

На следующем шаге можно переименовать наше виртуальное устройство, сменить размер экрана, версию андроида,

хотя можно и так оставить.

Читайте также: Приложение-браузер для android устройств

Больший интерес представляет кнопка дополнительной настройки Show Advanced Settings

нажав на которую будут показаны элементы настройки камеры, сети, можно регулировать объем оперативной памяти, размер SD CARD, насчет памяти особо важно, я оставил 1 ГГб, вы можете поставить 512 Мб, если оперативы на ПК маловато.

Жмем Finish, после некоторых раздумий при создании нового AVD, вы увидите, в менеджере новое виртуальное устройство.

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

Нажмем Пуск, подождем некоторое время, пока виртуальное устройство запустится

я для примера запустил диспетчер задач, чтобы посмотреть, сколько расходуется памяти. При том, что на эмуляторе не запущено ни одного приложения для тестирования, сама студия использовала 700 МБ оперативной памяти, а эмулятор более 1,4 ГГб. В следующий раз создадим что нибудь для примера и сравним результаты.

В этом видео подробно показано как создать эмулятор Android и настроить AVD:

Рекомендуем смотреть видео в полноэкранном режиме, в настойках качества выбирайте 1080 HD, не забывайте подписываться на канал в YouTube, там Вы найдете много интересного видео, которое выходит достаточно часто. Приятного просмотра!

 С уважением, авторы сайта Компьютерапия

Понравилась статья? Поделитесь ею с друзьями и напишите отзыв в комментариях!

ОСТАВЬТЕ ОТВЕТ

Please enter your name here
Please enter your comment!