В разделе Best Practices документа Android Developer’s Guide (сокращенное название Dev Guide) рассматриваются вопросы совместимости, поддержки нескольких экранов, указания по разработке интерфейса пользователя, а также разработки с учетом достижения производительности, способности к отклику и незаметности выполнения для пользователя.
При разработке приложения Android следует идентифицировать устройства и версии операционной системы, на которых оно будет выполняться. Потребности приложения описаны с помощью элементов
Свойство | Описатель |
---|---|
Звук | android.hardware.audio.low_latency |
Bluetooth | android.hardware.bluetooth |
Камера | android.hardware.camera |
Система автофокусировки камеры | android.hardware.camera.autofocus.flash |
Вспышка камеры | android.hardware.camera |
Фронтальная камера | android.hardware.camera.front |
Определение местоположения с помощью Сети | android.hardware.location.network |
GPS | android.hardware.location.gps |
Микрофон | android.hardware.microphone |
Коммуникации ближнего поля | android.hardware.nfc |
Датчик акселерометра | android.hardware.sensor.accelerometer |
Датчик барометра | android.hardware.sensor.barometer |
Датчик компаса | android.hardware.sensor.compass |
Датчик гироскопа | android.hardware.sensor.gyroscope |
Датчик освещенности | android.hardware.sensor.light |
Датчик приближения | android.hardware.sensor.proximity |
Телефония | android.hardware.telephony |
CDMA-телефония | android.hardware.telephony.cdma |
GSM-телефония | android.hardware.telephony.gsm |
Эмулированный сенсорный экран | android.hardware.faketouch |
Сенсорный экран | android.hardware.touchscreen |
Мультисенсорный экран (два или больше пальцев) | android.hardware.touchscreen.multitouch |
Дискриминатор нескольких касаний (уникальная система отслеживания положений двух пальцев, используемых для выполнения вращательных жестов) | android.hardware.touchscreen.multitouch.distinct |
Система распознавания касания экрана несколькими пальцами (распознает одновременное применение до пяти пальцев) | android.hardware.touchscreen.multitouch.jazzhand |
Wi-Fi | android.hardware.wifi |
Живые обои | android.software.live_wallpaper |
SIP | android.software.sip |
SIP/VoIP | android.software.sip.voip |
Можно фильтровать продажи и загрузки разработанного вами приложения по странам и провайдерам мобильной связи. Например, ваше приложение может предназначаться только для подписчиков провайдера Verizon или для пользователей, проживающих в Великобритании. Эти «рыночные» фильтры могут устанавливаться после регистрации на Google Play, с помощью которого публикуются приложения. Приложения также могут динамически опрашивать устройства с целью определения его характеристик. Например, если приложение обладает функциями, предусматривающими использование камеры, но может обходиться и без камеры, оно может опрашивать устройство с целью определения доступности его камеры.
Чтобы получить информацию о разработке приложений для нескольких устройств и обеспечения работоспособности приложения после выхода новых версий операционной системы Android, обратитесь к веб-сайту developer.android.com. Чтобы получить дополнительные сведения о фильтрах Market, позволяющих ограничить распространение приложения, обратитесь к веб-сайту developer.android.com/guide/appendix/market-filters.html.
Библиотека Android SDK 1.6 или более высокая версия поддерживает несколько размеров экранов (измеряются по диагонали) экранных разрешений (количество пикселей вдоль каждой стороны экрана). Но вряд ли понадобится разрабатывать приложение, которое предназначено для экранов, имеющих любые размеры и разрешения (разве что в исследовательских целях).
На платформе Android поддерживаются четыре обобщенных значения размера (маленький, обычный, большой и сверхбольшой) и разрешения (низкое, среднее, высокое и сверхвысокое). В результате обеспечивается разработка приложений, предназначенных для использования на нескольких экранах.
Эти значения размера и разрешения экрана можно использовать при разработке приложений, даже если фактические размеры экранов устройств Android отличаются. Можно также создать несколько ресурсов (например, макетов, пиктограмм и рисунков) с целью их масштабирования на соответствующих экранах. Когда пользователь выполняет приложение, Android автоматически отображает его на экране устройства, имеющего определенный размер и разрешение экрана, а также выбирает подходящие ресурсы (если указаны различные ресурсы для экранов с разными размерами). Можно также настроить значение элемента <supportsscreens>
из файла AndroidManifest.xml
таким образом, чтобы указать различные размеры экрана, поддерживаемые приложением. Дополнительные сведения по этой теме можно найти в документе Supporting Multiple Screens, который доступен на веб-сайте developer.android.com.
В процессе разработки приложений Android рекомендуется придерживаться указаний по разработке пиктограмм, виджетов, деятельностей, задач и меню, изложенных в документе Android User Interface Guidelines, находящемся на веб-сайте developer.android.com/guide/practices/ui_guidelines/index.html.
В документе Icon Design Guidelines (Указания по разработке пиктограмм) приведены сведения, используемые при создании пиктограмм (таких как пиктограмма запуска приложения, меню, панели состояния, вкладки, диалогового окна и списка), а также спецификации дизайна для каждой пиктограммы (размеры, цвет, позиционирование, эффекты и другие спецификации). Также предлагается воспользоваться загружаемым пакетом Android Icon Templates Pack, который предлагает шаблоны для создания собственных пиктограмм приложений в Adobe Photoshop и Adobe Illustrator.
В документе Widget Design Guidelines (Указания по разработке виджетов) приведены спецификации, применяемые в процессе создания виджетов для отображения на пользовательском главном экране динамически изменяющейся информации, например текущей погоды, курсов акций, цен на бензин и последних новостей. Виджеты могут быть автономными, но чаще всего они выступают в качестве дополнительной функции приложения, повышающей его ценность в глазах пользователя. Например, приложение ScoreCenter, предлагаемое компанией ESPN, включает виджет, предназначенный для отслеживания на главном экране пользователя результатов игр его любимых спортивных команд. Это гораздо удобнее, чем запускать приложение каждый раз, когда нужно просмотреть результаты последней игры. Пользователь может самостоятельно выбирать отображение виджета приложения на своем главном экране.
Создание выдающихся Android-приложений | Указания по проектированию деятельностей и задач |