Статьи

Общие конфигурации виртуальных устройств Android

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

  • HTC Evo 4G
  • Google / HTC Nexus One
  • Motorola Droid
  • T-Mobile / HTC G1
  • Интернет-планшет Archos 5
Конфигурации виртуальных устройств Android

Авторы предполагают, что читатель имеет некоторые базовые знания об Android и что все инструменты установлены и работают, в частности Eclipse, Android SDK и плагин Android ADT для Eclipse. Для этого урока вам потребуется использовать Android SDK и AVD Manager, доступные в Eclipse IDE.

Примечание. Если вы не используете Eclipse IDE для разработки под Android, вы все равно можете следовать этому руководству и создавать соответствующие конфигурации AVD с помощью инструмента командной строки android.bat (или команды android в Mac & Linux), представленного в / tools каталог установки Android SDK. Однако шаги будут другими, поскольку вы работаете в командной строке, а не через Android SDK и AVD Manager. Для получения дополнительной информации об инструменте командной строки android и о том, как использовать его для создания и управления AVD, см. Документацию Android SDK.

Android SDK и AVD Manager интегрируются в Eclipse IDE при установке подключаемого модуля Android Development Tools (ADT). Android SDK и AVD Manager используются для отслеживания различных целей Android SDK, установленных на вашем компьютере для разработки, а также для управления виртуальными устройствами Android (AVD), используемыми эмулятором Android, для имитации поведения реальных устройств Android.

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

Конфигурация AVD также описывает, как эмулятор должен эмулировать реальное устройство, включая:

  • Какую версию платформы Android эмулировать (уровень API) (Примечание. Целевая платформа может измениться, если и когда устройства получат беспроводные обновления)
  • Размер экрана, плотность и разрешение
  • SD Card размер и содержание
  • Детали оборудования (Камера? Клавиатура? Трекбол? D-Pad?)

Полный список параметров аппаратной эмуляции, включая настройки и их значения по умолчанию, доступен в документации по Android SDK .

Вы можете запустить Android SDK и AVD Manager с панели инструментов Eclipse, нажав кнопку с зеленым значком Android со стрелкой ( ) или выбрав Window-> Android SDK и AVD Manager.

HTC Evo 4G — одно из новейших Android-устройств на рынке. Это новый мощный телефон с большим экраном, мощным процессором и отличной камерой.

Важные характеристики этого устройства с точки зрения эмулятора:

  • Целевая платформа: на данный момент Android 2.1
  • Информация о экране: большой экран, высокая плотность
  • Отсутствие клавиатуры и DPad
  • Отсутствие трекбола

Поэтому давайте создадим конфигурацию AVD под названием Evo4G:

  1. В Eclipse запустите Android SDK и AVD Manager.
  2. Выберите «Виртуальные устройства» из опций слева
  3. Нажмите кнопку «Создать», чтобы создать новую конфигурацию AVD
  4. Назовите AVD: «Evo4G»
  5. Выберите цель: «Уровень API API Google 7»
  6. Введите размер SD-карты: «8 ГБ»
  7. Введите данные скина: «800×480»
  8. Отредактируйте свойство оборудования для абстрактной плотности ЖК-дисплея: «217»
  9. Добавить еще одно свойство оборудования для поддержки DPad: «Нет»
  10. Добавить еще одно свойство оборудования для поддержки клавиатуры: «Нет»
  11. Добавить еще одно свойство оборудования для поддержки трекбола: «Нет»
  12. Сохранить AVD

Теперь вы создали AVD, который может использоваться эмулятором Android, чтобы быть похожим на HTC Evo 4G и вести себя как он. Если вы запустите приложение Android в эмуляторе во время этого AVD, вы увидите, что экран очень похож на тот, который вы видели на реальном устройстве. Если у вас есть одно из этих устройств, вы можете сразу заметить, что экран не выглядит одинаково (программно). Эмулятор не предоставляет сторонние надстройки, такие как интерфейс HTC Sense.

Google Nexus One — мощный телефон с последней версией Android. Будучи устройством, изначально проданным непосредственно Google, этот телефон, похоже, получает обновления в ближайшее время. Он также имеет хороший экран и довольно быстрый, особенно с Android 2.2.

Важные характеристики этого устройства с точки зрения эмулятора:

  • Целевая платформа: на данный момент Android 2.2
  • Информация о экране: среднего размера, высокой плотности
  • Нет клавиатуры или DPad
  • Имеет трекбол

Поэтому давайте создадим конфигурацию AVD под названием NexusOne:

  1. В Eclipse запустите Android SDK и AVD Manager.
  2. Выберите «Виртуальные устройства» из опций слева
  3. Нажмите кнопку «Создать», чтобы создать новую конфигурацию AVD
  4. Назовите AVD: «NexusOne»
  5. Выберите цель: «API API уровня Google 8»
  6. Введите размер карты SD: «4 ГБ»
  7. Введите сведения о скине: «WVGA800» (800×480)
  8. Добавить свойство оборудования для абстрактной плотности ЖК-дисплея: «252»
  9. Добавить еще одно свойство оборудования для поддержки DPad: «Нет»
  10. Сохранить AVD
Конфигурация виртуального устройства

Вы создали AVD, который может использоваться эмулятором Android, чтобы он был похож на Google Nexus One. Если вы запустите приложение Android в эмуляторе во время этого AVD, вы увидите, что экран очень похож на тот, который вы видели на реальном устройстве. Здесь мы видим фотографию, которая показывает эмулятор Android с NexusOne AVD справа и реальный Nexus One слева.

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

Motorola Droid является одним из самых распространенных телефонов Android, доступных в Соединенных Штатах сегодня. Он также отличается от многих других более новых телефонов Android тем, что имеет аппаратную клавиатуру.

Важные характеристики этого устройства с точки зрения эмулятора:

  • Целевая платформа: на данный момент Android 2.1.
  • Информация экрана
  • Отсутствие поддержки трекбола
  • Имеет клавиатуру и DPAD

Поэтому давайте создадим конфигурацию AVD под названием MotoDroid:

  1. В Eclipse запустите Android SDK и AVD Manager.
  2. Выберите «Виртуальные устройства» из опций слева
  3. Нажмите кнопку «Создать», чтобы создать новую конфигурацию AVD
  4. Назовите AVD: «MotoDroid»
  5. Выберите цель: «Уровень API API Google 7»
  6. Введите размер SD-карты: «16 ГБ»
  7. Введите сведения о скине: «WVGA854»
  8. Отредактируйте свойство оборудования для абстрактной плотности ЖК-дисплея: «265»
  9. Добавить еще одно свойство оборудования для поддержки трекбола: «Нет»
  10. Сохранить AVD
Виртуальное устройство Android

Теперь вы создали AVD, который может использоваться эмулятором Android, чтобы быть похожим на Motorola Droid. Если вы запустите приложение Android в эмуляторе во время этого AVD, вы увидите, что экран очень похож на тот, который вы видели на реальном устройстве.

T-Mobile G1 был первым общедоступным телефоном Android. Хотя многие пользователи обновились до новых устройств Android, многие G1 все еще существуют. На самом деле, на момент написания статьи, хороший
50% активированных устройств по-прежнему работают под управлением Android 1.5 и Android 1.6 — хороший показатель того, что G1s и другие ранние телефоны Android все еще используются.

Важные характеристики этого устройства с точки зрения эмулятора:

  • Целевая платформа: надстройки Google с Android 1.6
  • Информация о экране: средняя плотность и маленький
  • Имеет клавиатуру и трекбол, но нет DPad

Поэтому давайте создадим конфигурацию AVD под названием TMobileG1:

  1. В Eclipse запустите Android SDK и AVD Manager.
  2. Выберите «Виртуальные устройства» из опций слева
  3. Нажмите кнопку «Создать», чтобы создать новую конфигурацию AVD
  4. Назовите AVD: «TMobileG1»
  5. Выберите цель: «API API уровня Google 5»
  6. Введите размер SD-карты: «2 ГБ»
  7. Введите сведения о скине: «HVGA» (480×320)
  8. Отредактируйте свойство оборудования для абстрактной плотности ЖК-дисплея: «180»
  9. Добавить свойство оборудования для поддержки DPad: «Нет»
  10. Сохранить AVD
Виртуальное устройство Android

Теперь вы создали AVD, который может использоваться в эмуляторе Android, чтобы быть похожим на T-Mobile G1. Если вы запустите приложение Android в эмуляторе во время этого AVD, вы увидите, что экран очень похож на тот, который вы видели на реальном устройстве.

Наконец, давайте посмотрим на устройство Android, которое не является телефоном. Один хороший вариант — интернет-стол Archos 5. Разработка для других типов устройств Android имеет свои собственные проблемы. Без надстроек Google вы не можете рассчитывать на присутствие каких-либо конкретных приложений. Например, приложение Google Maps не будет доступно. На устройстве все еще может быть приложение «Карты», но вы не обязательно будете знать, как оно будет себя вести. Настоятельно рекомендуется проводить тестирование без этих приложений, как вы можете делать с эмулятором, чтобы вы знали, делает ли приложение предположения, которых оно не должно делать.

Важные характеристики этого устройства с точки зрения эмулятора:

  • Целевая платформа: Android 1.6, но без дополнений Google
  • Информация о экране: высокая плотность и большой
  • Нет клавиатуры
  • Нет Google API
  • Не снимать

Поэтому давайте создадим конфигурацию AVD под названием Archos5:

  1. В Eclipse запустите Android SDK и AVD Manager.
  2. Выберите «Виртуальные устройства» из опций слева
  3. Нажмите кнопку «Создать», чтобы создать новую конфигурацию AVD
  4. Назовите AVD: «Archos5»
  5. Выберите цель: «Android 1.6 API Level 5»
  6. Введите размер SD-карты: «2 ГБ»
  7. Введите сведения о скине: «WVGA800»
  8. Отредактируйте свойство оборудования для абстрактной плотности ЖК-дисплея: «194»
  9. Добавить свойство оборудования для поддержки DPad: «Нет»
  10. Добавить еще одно свойство оборудования для поддержки трекбола: «Нет»
  11. Добавить еще одно свойство оборудования для поддержки клавиатуры: «Нет»
  12. Добавить еще одно свойство оборудования для поддержки камеры: «Нет»
  13. Добавить еще одно свойство оборудования для поддержки GSM модема: «Нет»
  14. Сохранить AVD
Виртуальное устройство Android

Теперь вы создали AVD, который может использоваться эмулятором Android, чтобы быть похожим на интернет-планшет Archos 5 и вести себя как он. Если вы запустите приложение Android в эмуляторе во время этого AVD, вы увидите, что экран очень похож на тот, который вы видели на реальном устройстве. На следующем фото справа показан эмулятор Android с использованием Archos5 AVD и реальный интернет-планшет Archos 5 слева.

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

Чтобы использовать созданные вами AVD, вам нужно запустить эмулятор Android, назначив ему соответствующий AVD. Самый простой способ сделать это из Eclipse — это выбрать проект Android и обновить его конфигурацию Debug или Run, чтобы настроить его на ручной режим или конкретное AVD по имени. Когда вы запускаете или отлаживаете приложение, будет загружен соответствующий AVD (если вы его выбрали), или вам будет предложено вручную выбрать подходящий AVD из средства выбора устройств Android, как показано ниже.

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

Если вы хотите иметь возможность контролировать размер эмулятора на экране, вам нужно использовать кнопку «Пуск…» из «Выбор устройства» или из Android SDK и AVD Manager. Вы увидите следующий диалог:

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

Убедитесь, что вы выбрали правильные цифры для дисплея вашего рабочего стола и размера экрана устройства. На моем 24-дюймовом мониторе с разрешением экрана 1920×1200 dpi составляет 94. Вам нужно будет рассчитать это для вашего собственного монитора или экрана ноутбука.

Хотя теперь вы можете эмулировать устройство гораздо более реалистичным способом, у этого есть определенные недостатки. Во-первых, вы все еще только подражаете, как мы обсуждали. Во-вторых, и что более важно, некоторые из этих настроек значительно затрудняют использование эмулятора. Например, если вы решите отключить клавиатуру, эмулятор выполнит это, и вы будете вынуждены использовать экранную клавиатуру в Android. Кроме того, если вы отключите оборудование GSM, у вас не будет возможности установить соединение для передачи данных, так как опция Wi-Fi также не работает.

Наконец, размер SD-карты напрямую занимает столько места на вашем компьютере. Убедитесь, что вы используете достаточно большой размер SD-карты для тестирования вашего приложения, но нет реальной необходимости точно имитировать размер SD-карты. SD-карты также могут быть заменены пользователем, поэтому вы не можете гарантировать, что у пользователя все еще есть оригинальная карта. Итак, вы должны решить, какая эмуляция наиболее важна для вас. Кроме того, полная эмуляция может быть наиболее полезной при использовании с инструментами автоматического тестирования, а не людьми.

Из этого руководства вы узнали, как создавать виртуальные устройства Android (AVD) для эмуляции многих популярных устройств Android, в том числе: HTC Evo 4G, Google Nexus One, Motorola Droid, T-Mobile G1 и интернет-планшета Archos 5.

Эмулятор Android — это самый важный инструмент разработчика для разработки и публикации приложений Android, но он эффективен, если он фактически эмулирует соответствующие целевые устройства. Вот где создание подробных конфигураций AVD для целевых телефонов становится необходимым. Тем не менее, важно помнить, что эмулятор просто притворяется, а не использует аппаратные и программные возможности и ограничения, уникальные для этого устройства. Чтобы убедиться, что ваше приложение работает должным образом на данном устройстве, вы всегда должны по возможности проверять его на реальном оборудовании. Один и тот же AVD можно использовать для тестирования нескольких приложений, или можно создать несколько AVD для тестирования разных конфигураций устройства для одного приложения.

Если у вас есть какие-либо вопросы по поводу этого урока, свяжитесь с нами. Дополнительную информацию о виртуальных устройствах Android (AVD) можно найти в документации по Dev Guide на веб-сайте разработчиков Android .

Мы надеемся, что вам понравился этот урок, и с нетерпением ждем ваших отзывов!

Разработчики мобильных приложений Лорен Дарси и Шейн Кондер являются соавторами нескольких книг по разработке Android: углубленная книга по программированию под названием « Разработка беспроводных приложений для Android» и « Разработка Android-приложений Sams TeachYourself за 24 часа» . Когда они не пишут, они тратят свое время на разработку мобильного программного обеспечения в своей компании и оказание консультационных услуг. С ними можно связаться по электронной почте [email protected] , через их блог на androidbook.blogspot.com и в Twitter @androidwireless .

Купить Android-разработку беспроводных приложений, 2-е издание Купить Sam's Teach Yourself для Android-разработки приложений в течение 24 часов Код Мамламбо в Код-Каньоне