Разработка циферблатов для 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 раза произнести это самое «заклинание». Вуаля, больше глаз ничего не мозолит!
Источник
Обзор WatchfacePRO. Как самому создать циферблат для Android Wear
Android Wear в отличие от часов Apple предлагает возможность устанавливать свои циферблаты на экран часов. Свои в данном случае обозначает — циферблат, разработанный программистом. Однако, благодаря сайту WatchfacePRO теперь каждый может сделать свои часы неповторимыми.
Сайт WatchfacePRO предлагает самому создать циферблат для часов на Android Wear.
Для создания циферблата нужно пройти семь шагов. Сразу же при открытии главной страницы сайта будет предложено скачать все существующие дизайны или создать свой собственный. Именно о создании собственного дизайна я и расскажу.
На первом шаге выбираем шаблон для будущего циферблата. Можно сменить форму часов с квадратной на круглую и выбрать несколько дизайнов стрелок:
Затем нам предлагают создать свой собственный фон. Есть возможность загрузить свое изображение или выбрать из существующих шаблонов. Любое свойство будущего фона настраивается вплоть до угла поворота картинки и ее прозрачности:
Следующий шаг — редактор цифрового циферблата. Как и на всех этапах, разработчики сайта предлагают нам полный контроль над всеми параметрами. Конечно же, циферблат можно полностью отключить.
Похожий мастер нас ждет и на следующем шаге для аналогового циферблата:
На следующих двух шагах предлагается настроить отображение даты:
И заряда аккумулятора:
После того, как вы закончили с дизайном, остается только придумать название и указать свой адрес электронной почты. Где уже через пару минут вас будет ожидать файл с циферблатом:
Конкурс
WatchfacePRO проводят конкурс на сайте Reddit. Главный приз, в котором $100 на Google Play/iTunes/Amazon Gift Card и футболка mobile9.
Для участия в конкурсе нужно просто создать свой циферблат на сайте WatchfacePRO и поделиться ссылкой на них в треде на Reddit. Формат поста должен быть такой: «[Contest] Название вашего циферблата». Ссылка должна вести на циферблат на сайте mobile9.
- Первое место: $100 на Google Play/iTunes/Amazon и футболка mobile9;
- Второе место: $50 на Google Play/iTunes/Amazon и футболка mobile9;
- Первое место: $10 на Google Play/iTunes/Amazon и футболка mobile9.
Конкурс продлится до второго октября 2:00 GMT. Полные условия конкурса здесь.
Источник
Создание циферблата android wear
Watch Faces — WatchMaker 100,000 Faces
версия: 7.2.4 watch
Последнее обновление программы в шапке: 31.10.2021
Краткое описание:
Программа для создания циферблатов.
Требуется Android: 2.3+
Русский интерфейс: Нет
версия 5.4.2 [Unlocked] [Android Wear] WatchMaker Watch Face (Пост Giacomino #83493484)
версия 5.4.1[Unlocked]
версия 5.4.0 [Unlocked]
версия 5.3.2 [Unlocked] [Android Wear] WatchMaker Watch Face (Пост Giacomino #81712694)
WatchMaker Watch Face v5.2.1 b2252106 [Unlocked]
WatchMaker Live Wallpaper_4.9.9 [Android Wear] WatchMaker Watch Face (Пост Anatomica #77560955)
версия 5.2.0 [Android Wear] WatchMaker Watch Face (Пост Anatomica #77560955)
Версия 4.3.1 Premium [Android Wear] WatchMaker Watch Face (Пост Anatomica #77560955)
WatchMaker 5.1.9 free
версия 5.1.8
версия 5.1.3 [Android Wear] WatchMaker Watch Face (Пост Giacomino #73968835)
версия: 5.1.0 Unlocked
WatchMaker Watch Face v4.9.8 [Unlocked]
WatchMaker Watch Face v4.8.3 [Unlocked]
WatchMaker Watch Face v4.8.2 [Unlocked]
версия: v4.7.3 WatchMaker Watch Face v4.7.3 [Unlocked]
версия: v4.6.4 WatchMaker Watch Face v4.6.5
версия: v4.6.4 [Android Wear] WatchMaker Watch Face (Пост Giacomino #67412238)
версия: v4.6.2 [Android Wear] WatchMaker Watch Face (Пост vutak #64514188)
версия: v4.4.6 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #63303306)
версия: v4.4.5 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #63197798)
версия: v4.4.4 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #63080137)
версия: v4.4.3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62976949)
версия: v4.4.1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62916386)
версия: v4.4.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62701513)
версия: v4.3.5 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62550937)
версия: v4.3.4 [Android Wear] WatchMaker Watch Face 4.3.4 unlocked
версия: v4.3.3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62416616)
версия: v4.3.2 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62383248)
версия: v4.3.1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62323472)
версия: v4.3.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #62123530)
версия: v4.2.8 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61816859)
версия: v4.2.7 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61726548)
версия: v4.2.5 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61679788)
версия: v4.2.4 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61568414)
версия: v4.2.3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61462962)
версия: v4.2.2 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61294801)
версия: v4.2.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #61118673)
версия: v4.2.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #60845968)
версия: v4.1.6 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #60651971)
версия: v4.1.5 [Android Wear] WatchMaker Watch Face (Пост Giacomino #60121360)
версия: v4.1.4 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #59920324)
версия: v4.1.3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #59684021)
версия: v4.1.2 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #59641935)
версия: v4.1.1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #59600504)
версия: v4.1.0 b2241002 [Android Wear] WatchMaker Watch Face (Пост Giacomino #59427630)
версия: 4.1.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #59344495)
версия: 4.0.3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58874906)
версия: 4.0.2 Final [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58671812)
версия: 4.0.2 b1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58641860)
версия: 4.0.1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58195736)
версия: 4.0.0 final [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58127045)
версия: 4.0.0 b4 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #58078254)
версия: 4.0.0 b3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #57866287)
версия: 4.0.0 b2 [Android Wear] WatchMaker Watch Face (Пост Giacomino #57100881)
версия: 4.0.0 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #56975531)
версия: 3.9.9g3 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #55166267)
версия: 3.9.9f1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #53970358)
версия: 3.9.9e [Android Wear] WatchMaker Watch Face (Пост Alex0047 #49753947)
версия: 3.9.9d [Android Wear] WatchMaker Watch Face (Пост alvise #49558241)
версия: 3.9.9c [Android Wear] WatchMaker Watch Face (Пост Alex0047 #48772497)
версия: 3.9.9b https://4pda.to/forum/d…r.3.9.9b.build.161.apk
версия: 3.9.8 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #47799349)
версия: 3.9.7 [Android Wear] WatchMaker Watch Face (Пост Giacomino #47373834)
версия: 3.9.6 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #45375512)
версия: 3.9.5 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #44294392)
версия: 3.9.4 Final [Android Wear] WatchMaker Watch Face (Пост Giacomino #43699333)
версия: 3.9.3 [Android Wear] WatchMaker Watch Face (Пост ARMENO #42650304)
версия: 3.9.2 [Android Wear] WatchMaker Watch Face (Пост ARMENO #42374697)
версия: 3.9.1 Final 4 PDA + Я ндекс.Диск
версия: 3.9.0 beta 1 [Android Wear] WatchMaker Watch Face (Пост Alex0047 #41197194)
версия: 3.8.0 Final [Android Wear] WatchMaker Watch Face (Пост Alex0047 #40834106)
версия: 3.8.0 beta 1https://4pda.to/forum/d…atch+Face+v3.8.0b1.apk
версия: 3.7.4 Premium [Android Wear] WatchMaker Watch Face (Пост Alex0047 #40383836)
версия: 3.7.3 Premium https://4pda.to/forum/d…Frenzy.premium.130.apk
версия: 3.7.0 Premium[Android Wear] WatchMaker Watch Face (Пост Alex0047 #40248645)
версия: 3.6.0 Premium [Android Wear] WatchMaker Watch Face (Пост Alex0047 #39624652)
версия: 3.5.3 Premium [Android Wear] WatchMaker Watch Face (Пост Alex0047 #39246084)
версия: 3.5.0 Premium WatchMaker+Premium+Watch+Face+v3.5.0.apk ( 14.92 МБ )
версия: 3.4.0 Premium WatchMaker+Premium+Watch+Face+v3.4.0.apk ( 15.2 МБ )
версия: 3.3.2 Premium WatchMaker+Premium+Watch+Face+v3.3.2.apk ( 15.14 МБ )
версия: 3.0.0 Premium WatchMaker+Premium_3.0.0.apk ( 14.29 МБ )
версия: 2.9.2 Premium WatchMaker_Premium_2.9.2.apk ( 14.18 МБ )
По вопросам наполнения шапки обращайтесь в QMS к Модераторам раздела или через кнопку «Жалоба» под сообщениями, на которые необходимо добавить ссылки.
Сообщение отредактировал Boy77ruS — 31.10.21, 21:22
Источник