...

среда, 9 апреля 2014 г.

[Из песочницы] Что делать, если под рукой нет Android-устройства? Обзор Android-эмуляторов

Введение




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

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

Я кратко расскажу о следующих:



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

  • Genymotion

  • Android x86

  • Bluestacks




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

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




image

Сайт: http://ift.tt/i9opoZ

Самый очевидный способ подмены устройства. Если занимаешься разработкой под 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




Минусы



Genymotion




image

Сайт: http://ift.tt/198VXbK

Проприетарная реализация, выросшая из проекта AndroVM.

По сути, виртуальная машина на VirtualBox с дополнительными фишками вроде своих контролов, расширенной настройки и т.д.

Достаточно удобен, быстр, много возможность, коммандлайн тулы, Java API для тестов.

При создании устройства из сети выкачивается его образ.

APK можно устанавливать, перетянув их на окно с виртуалкой.


Скриншоты
Окно работающего девайса



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



Главное окно приложения






Плюсы




  • Кроссплатформенное решение

  • Быстрый

  • Много дополнительных тулов (контроль заряда, акселерометра, API для тестов и т.д.)

  • Плагин для Eclipse, легкий доступ через adb




Минусы




  • Платный для компаний, и это главный минус

  • Не ARM

  • Достаточно долгий выход актуальных версий Android


Android x86




image

Сайт: http://ift.tt/j0k15o

Проект по портированию 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 нет, дебажить не получится. Однако для запуска приложений может быть полезен.


Скриншоты
Запуск:



Главное окно:






Плюсы




  • Кроссплатформенное решение (правда, только Mac и Windows)

  • Быстрый




Минусы




  • Нет доступа к adb

  • Неудобно ставить приложения

  • Непонятно, что с версиями android (по виду — 2.3)

  • Нет под linux


Вывод




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

This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

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