Пишем часы для андроид

Android Wear: Создание приложения для часов

После того, как мы научились создавать уведомления, посылаемые на часы, пора переходить на новый уровень и начинать писать программы для самих часов.

Создаём новый проект. Главное отличие — отметьте флажком оба пункта Phone and Tablet и Wear.

Далее вам предложат выбрать шаблон активности для телефона/планшета — Add an activity to Mobile. Этот шаг вам знаком по обычным приложениям. Выбираем Blank Activity и определяем названия активности, меню и т.д.

Затем появится новое окно, не встречавшееся ранее — Add an activity to Wear. Выбираем вариант Blank Wear Activity.

В следующем окне выберите имя для активности. Чтобы не путаться, я предпочёл изменить имя по умолчанию на WearMainActivity.

Кнопка Finish завершает работу мастера.

Среда разработки создаст два модуля mobile и wear. Считайте, что у вас два отдельных проекта. У каждого модуля свои настройки, ресурсы, пакеты.

Эмуляторы телефона/планшета и часов должны быть запущены.

Проверим работу проекта. Сначала запустим модуль mobile. Когда будете нажимать на зелёный треугольник, то обращайте внимание на выпадающий список слева. Там должно быть слово mobile. Также можно использовать меню Run и выбирать пункт Run. .

Дождитесь запуска приложения на эмуляторе устройства. Появится обычное приложение «Hello World!».

Теперь запустим модуль wear. Выберем данный модуль из выпадающего списка и опять нажимаем на кнопку Run.

Источник

Разработка и отладка приложений для Android Wear

Носимые устройства – это передний край сегодняшних информационных технологий. Это – мощный тренд. Самые популярные «носимые компьютеры» работают под управлением ОС Android Wear от Google. Она не так уж сильно отличается от того Android’а, который знаком огромному количеству разработчиков. Как результат, любой из этих разработчиков может без особых сложностей начать создавать приложения для Android Wear и претендовать на свою долю внимания от весьма перспективного рынка «носимых приложений».

В этой статье мы поговорим об ОС Android Wear, обратив особое внимание на устройства, работающие под её управлением, на типы приложений, на их разработку и отладку. В частности, рассмотрим два способа отладки с использованием ADB.

Устройства

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

Крупнейшие производители оборудования выпускают собственные серии наручных часов, которые несут на борту Android Wear. Среди устройств этого типа можно отметить ASUS ZenWatch 2, Motorola 360, LG Watch Urbane, Samsung Gear S, Sony SmartWatch 3. Выглядят эти часы по-разному, но в их функциональности, благодаря одной и той же программной платформе, много общего. Это приложение Google Now, возможность отслеживания физической активности пользователя, средства для управления воспроизведением музыки, поддержка голосовых команд.

Все смарт-часы имеют ещё одну общую черту: они зависят от смартфонов, взаимодействуя с ними с помощью Bluetooth. Такой подход используется не только в среде Android, но и на платформе iOS. Взаимодействие смартфонов и планшетов с часами на программном уровне обеспечивается благодаря специальным сопутствующим приложениям.

Читайте также:  Reading usb on android

Что разрабатывать для умных часов?

Хотя Android Wear – проект сравнительно новый, Android Wear Center, площадка, аналогичная Google Play, предлагает множество приложений, созданных специально для носимых устройств.

Магазин приложений для умных часов

Здесь есть программы на любой вкус. Каждый день в Android Wear Center публикуются новые приложения для персонализации часов, для работы с музыкой, приложения для организации работы с функциями связи, разработки для здоровья, спорта и другие. Несмотря на небольшой размер экранов часов, есть и игры для них. Например – аркады и паззлы, хотя «носимых игр» пока не так много.

Игры для умных часов

Подавляющее большинство приложений – это циферблаты, которые позволяют настраивать основную «часовую» функцию – показ времени.

Как разрабатывать?

С одной стороны, написание приложений для умных часов очень похоже на создание программ для планшетов и смартфонов. В дело идут знакомые Android-разработчикам инструменты, такие, как JDK, Android SDK (платформа Android Wear поддерживает большую часть API Android), Eclipse, Android Studio или другие интегрированные среды разработки. Здесь можно найти список классов из библиотеки поддержки носимых устройств (Wearable Support Library).

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

Как отлаживать?

Отладка – это то, без чего не обходится процесс создания любого программного кода. Разработка для Android Wear – не исключение. В этом разделе мы рассмотрим отладку «носимых» приложений на примере часов LG G Watch R, подключённых к Nexus 4.

Android Wear поддерживает два способа отладки: с использованием проводного интерфейса USB и по беспроводному Bluetooth.

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

    Установка ADB на компьютер разработчика.

Отладочный мост Android (Android Debub Bridge, ADB) – это инструмент командной строки, который обеспечивает взаимодействие компьютера с устройствами, работающими под управлением ОС Android или с соответствующими эмуляторами.

Для того чтобы отлаживать приложения для Android Wear, нужно включить на устройствах работу в режиме отладки. Сделать это необходимо и на умных часах, и на смартфоне, к которому они подключены. Если устройство впервые используется для отладки, нужно открыть его Настройки (Settings), войти в раздел Об устройстве (About) и семь раз коснуться элемента Номер сборки (Build number). После этого в списке настроек устройства появится новая строка – Параметры разработчика (Developer Options). На устройствах различных производителей названия пунктов могут выглядеть иначе.

Включение режима разработчика на умных часах

Переход в раздел настроек разработчика и включение возможности отладки с использованием ADB.

Включение отладки с использованием ADB на умных часах

После этого, если планируется использовать USB-отладку, выполняются следующие действия.

    Подключение носимого устройства к ПК с помощью USB-кабеля.

Подключение часов к ПК с помощью USB-кабеля

Разрешение отладки приложений на часах.

Для этого нужно нажать ОК во всплывающем окне с соответствующим вопросом. Оно появится на смартфоне или планшете, с которым связаны часы.

Читайте также:  Микшер для андроид с функцией балансировки

Для USB-отладки приложений на часах нужно разрешить её на смартфоне или планшете

Для того, чтобы проверить, распознал ли ADB умные часы, подключённые к компьютеру, можно воспользоваться командой adb devices в командной строке.

Результат выполнения команды adb devices

После этого всё готово к отладке «носимых» приложений по USB. А вот если вы решили воспользоваться Bluetooth-отладкой, то подготовка к ней будет немного сложнее. Для этого надо выполнить следующие действия.

Включение возможности отладки по Bluetooth (Debug over Bluetooth) на часах.

Включение отладки по Bluetooth на часах

Включение отладки по Bluetooth (Debug over Bluetooth) в приложении, благодаря которому смартфон или планшет взаимодействуют с часами. На рисунке выделена область, в которой отображается состояние устройств.

Включение отладки по Bluetooth на смартфоне и информация о подключении

Подключение смартфона или планшета, соединённых с часами, к компьютеру по USB и разрешение отладки по USB.

Разрешение отладки по USB на телефоне

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

Включение на смартфоне или планшете возможности отладки носимого устройства, подключённого к нему.

Разрешение отладки носимого устройства, подключённого к смартфону

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

Изменение информации о подключении устройств

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

Список устройств, распознанных ADB

Теперь, когда все подготовительные шаги завершены, приложения на часах можно отлаживать, используя команды ADB.

Как делать скриншоты на часах?

ADB умеет не только отлаживать приложения. Возможности этого инструмента гораздо шире. Например, сделать скриншот на часах – не такая простая задача, как может показаться на первый взгляд. Так, команда для съёмки скриншота в программе, обеспечивающей связь с часами, делает копии экрана, но умеет лишь отправлять их по электронной почте или публиковать в социальных сетях. Для того чтобы заполучить копию экрана часов на компьютер, удобнее и быстрее всего использовать соответствующие команды ADB:

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

Квадратные скриншоты часов с круглым циферблатом

Выводы

Союз современных технологий, таких, как процессор Intel Quark и операционная система Android Wear, открывает новые возможности не только для разработчиков устройств, но и для создателей приложений.

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

Источник

Разработка циферблатов для Android Wear — это проще, чем кажется

Когда возникла идея делать циферблаты для часов на Android Wear, к делу приступили без страха. Опыт разработки под «большой» андроид был, а на часиках крошечный экран и всего одна кнопка — легче лёгкого.

Как всегда, инструкции от разработчиков на developer.android.com/training/building-wearables.html остались без внимания — надо было творить, а не читать мануалы. Поэтому многие вещи, которые можно оттуда почерпнуть, становились озарениями и собственными “прорывами”.

Приложение состоит из двух частей: mobile и wear, которые любезно генерирует Android Studio при создании нового проекта. Откровением стало то, что wear компилируется, пакуется и вкладывается в raw ресурсы mobile. Mobile же представляет собой стандартное приложение для телефона, которое при установке разворачивается и пересылает wear из своего комплекта на часы. Пересылкой и закачкой занимается Android Wear — приложение-мостик, соединяющее носимые гаджеты с “большим братом” (качается из гугл-плея, чтобы раскрыть полный потенциал часов). Кстати, Моторола предлагает вдогонку установить еще своё приложение, которое как Android Wear, только Moto Connect:) Из плюшек — своя, мотороловская реклама приложений, которые глянулись лично им, ну и конечно своих фитнес-примочки.

Читайте также:  Как обновить операционку андроид

Решено было не пилить велосипед, а воспользоваться последними достижениями инженерии, построив приложение на SDK от профессионалов, приложивших руку к истокам платформы (цитата с сайта): github.com/ustwo/clockwise

Впоследствии, когда платформа стала роднее, оказалось, что ребята написали не очень толстую прослойку над нативным WatchFaceService, оставив тем самым полную свободу для творчества и сэкономив день-другой для написания такого же базового сервиса. В любом случае спасибо: платформа позволяет конфигурировать элементы стиля будущих часов, частоту обновления, тянет на себе функционал работы с датами и делегирует методы onDraw и onLayout. Кроме того, сообщает форму часов, правда только в двух вариантах — круглые/квадратные. Моторола с её «бородой» (она же «chin» или «flat tire») определяется как круглая, но с шириной больше высоты, так её и вычисляем.

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

Поскольку в команде присутствовал дизайнер, сразу было принято волевое решение — циферблаты будут отрисовываться изображениями. Никакой логики, рисования по canvas, только PNG, только хардкор. Были заведены библиотеки изображений, отвечающие за цифры и позиционные ImageView, куда нужные цифры подставлялись по HH:mm в 24 или 12-часовом формате в зависимости от локали пользователя.

Далее, вдогонку за вкусами и предпочтениями пользователей, возникла потребность выводить дату. Для неё появились 6 ImageView dd.MM.yy или MM.dd, если владелец часов родом из США.

Самым частым упрёком, который выдвигали нам на тот момент в Google Play было отсутствие ambient-режима. Его мы сознательно не реализовывали, потому что его существование упоминалось в инструкции, причём почти без картинок и далеко не в начале.

Согласно хорошей идее создателей платформы, часы через несколько секунд бездействия переходят в режим экономии батареи, посылая сервису, отрисовывающему циферблат, соответствующее уведомление. Циферблат должен отреагировать на новое состояние, полностью упростив интерфейс. Вместо красочного рисунка со множеством свистелок, экран необходимо залить на 95% чёрным цветом, оставив только тусклые циферки. Далее качество изображения зависит от производителя часов: кто-то отображает оттенки серого в ambient режиме, а кто-то выводит картинку в ч/б. Также в этом режиме предписывается отключить все энергоёмкие функции вашего приложения — никаких геолокаций и просмотра youtube.

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

P.S. И лайфхак для тех, кто не в курсе. Чтобы избавиться от надоедливой подсказки «Ok Google» на экране часов, нужно 2-3 раза произнести это самое «заклинание». Вуаля, больше глаз ничего не мозолит!

Источник

Оцените статью