Что делает avd android virtual device

Обзор средств запуска и отладки приложений на Android

Разрабатывая свое первое приложение под Android, я столкнулся с проблемой запуска приложения для проверки и отладки. Эта статья должна помочь начинающему пользователю выбрать средство эмуляции.

Содержание:
Android Virtual Device (AVD)

Установка:
Это средство эмуляции встроено в Android SDK.

Настройка:
(на примере использования в Eclipse)
Window > Android SDK and AVD Manager > New
Вписываем имя виртуального устройства, платформу, размер карты памяти, тип дисплея…
Жмем Create AVD.

Запуск:
Первый запуск эмулятор длиться очень долго, особенно на слабых устройствах. Например, я так и не смог дождаться первого запуска на своем нетбуке, а, запуская первый раз на компьютере, был уверен, что эмулятор ушел в вечный цикл.
Последующие запуски эмулятора будут чуть шутрее.
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе проходит в среднем 11 секунд. Замеры проводил на достаточно производительном компьютере.

Преимущества и недостатки:
+ возможность протестировать приложение на разных версиях ОС Android, на устройствах с разными типами дисплея…
+ различные настройки, необходимые для тестирования, например, смена ориентации экрана
+ эмуляция SD-карты
— большой промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
— эмулятор работает очень медленно, например, то, что телефон обрабатывал 1-2 секунды, эмулятор делал за 8-10 секунд

VirtualBox+Android x86

Установка и настройка:

  1. Скачиваем и устанавливаем VirtualBox.
  2. Скачиваем образ.
  3. «Создаём виртуальную машину Linux 2.6/Other Linux, 512 Mb RAM, Bridged Network, HD 2 Gb, Disable Mouse Integration. Подключаем ISO файл и загружаемся одной из опций LiveCD (есть вариант HDPI и MDPI)» (с) или следуем этой инструкции.
  4. Нажимаем Alt-F1 для выхода в консоль и набираем netcfg и запоминаем IP адрес эмулятора. Для возврата к GUI, нажимаем Alt-F7.
  5. adb connect

Запуск:
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе не засекал, но, по субъективным ощущениям, это происходит почти мгновенно.

Преимущества и недостатки:
+ маленький промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
+ местами шустрая работа
— достаточно длительная и иногда проблематичная установка
— эмулятор работает местами медленно, имеются проблемы с изображением (особенно на MDPI)
— проблемы с эмуляцией SD-карты, сменой ориентацию экрана,…
— только два (три) доступные версии ОС Android и только два доступных типа дисплея

Телефон с ОС Android, подключенный через USB

Установка и настройка:

  1. Включаем на телефоне режим отладки. (Насторйки > Приложения > Разработка > Отладка по USB).
  2. Скачиваем драйвер для вашего телефона.
  3. Подключаем телефон к ПК.
  4. Устанавливаем драйвера. В Диспетчере устройств должен появиться раздел ADB Interface.
  5. adb devices. Если ваш телефон не отображается в списке, то переустанавливаем драйвер ADB.

Запуск:
Между нажатием кнопки «Run» и появлением главного активити тестового приложения на телефоне проходит порядка 5 секунд.

Преимущества и недостатки:
+ возможность увидеть приложение так, как его будет видеть пользователь (очень важным момент, особенно при создании интерфейса и дизайна приложения)
+ мультитач (если есть в телефоне)
+ смена ориентации экрана, акселерометр (если есть в телефоне)
— только одна версия ОС и один тип дисплея
— на физическом рабочем столе появиться еще один объект

Читайте также:  Unity размер экрана под андроид
Выводы:

Я пробовал работать с каждым из этих средств эмуляции и остановился на таком варианте:
1. написание и тестирование приложения, используя телефон;
2. тестирование приложения на многочисленных Android Virtual Device с различными комбинациями версии ОС и типа дисплея.
Надеюсь, что читающий сделал выбор эмулятора или почерпнул для себя что-то новое.
Удачи в тестировании!

Источник

Что делает avd android virtual device

Виртуальное устройство 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). Он находится здесь \sdk\extras\intel\Hardware_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«.

Источник

Читайте также:  Honda accord 8 android автомагнитола
Оцените статью