Носить

Создавайте приложения для умных часов Wear OS by Google.

В этой таблице перечислены все артефакты группы androidx.wear .

Артефакт Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
носить 1.3.0 - - 1.4.0-альфа01
износ 1.1.0 - - 1.2.0-альфа02
испытание на износ 1.1.0 - - 1.2.0-альфа02
изнашивающийся 1.0.0 - - 1.1.0-альфа01
взаимодействие с носимым телефоном 1.1.0 - - -
износ-дистанционное-взаимодействия 1.1.0 - - -
Последнее обновление этой библиотеки: 26 февраля 2025 г.

Объявление зависимостей

Чтобы добавить зависимость от Wear, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

классный

dependencies {
    implementation "androidx.wear:wear:1.3.0"

    // Add support for wearable specific inputs
    implementation "androidx.wear:wear-input:1.1.0"
    implementation "androidx.wear:wear-input-testing:1.1.0"

    // Use to implement wear ongoing activities
    implementation "androidx.wear:wear-ongoing:1.0.0"

    // Use to implement support for interactions from the Wearables to Phones
    implementation "androidx.wear:wear-phone-interactions:1.0.1"
    // Use to implement support for interactions between the Wearables and Phones
    implementation "androidx.wear:wear-remote-interactions:1.0.0"
}

Котлин

dependencies {
    implementation("androidx.wear:wear:1.3.0")

    // Add support for wearable specific inputs
    implementation("androidx.wear:wear-input:1.1.0")
    implementation("androidx.wear:wear-input-testing:1.1.0")

    // Use to implement wear ongoing activities
    implementation("androidx.wear:wear-ongoing:1.0.0")

    // Use to implement support for interactions from the Wearables to Phones
    implementation("androidx.wear:wear-phone-interactions:1.0.1")
    // Use to implement support for interactions between the Wearables and Phones
    implementation("androidx.wear:wear-remote-interactions:1.0.0")
}

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см. в документации по системе отслеживания проблем .

Износ базовой версии 1.0

Версия 1.0.0-альфа01

29 мая 2024 г.

Выпущен androidx.wear:wear-core:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты .

Изменения API

  • Добавлен новый класс WearApiVersionhelper , помогающий проверять совместимость API во время выполнения на Wear. Клиенты могут использовать этот статический вспомогательный класс и предоставленный метод ( #isApiVersionAtLeast(VERSION) ) для проверки совместимости.

Предварительная версия износостойкого инструмента 1.0

Версия 1.0.0

29 ноября 2023 г.

Выпущен androidx.wear:wear-tooling-preview:1.0.0 . Версия 1.0.0 содержит эти коммиты.

Возможности версии 1.0.0

  • Добавьте WearDevices в список допустимых устройств износа, которые можно использовать для предварительного просмотра пользовательского интерфейса.

Версия 1.0.0-rc01

15 ноября 2023 г.

androidx.wear:wear-tooling-preview:1.0.0-rc01 выпущен без изменений. Версия 1.0.0-rc01 содержит эти коммиты.

Версия 1.0.0-бета01

18 октября 2023 г.

androidx.wear:wear-tooling-preview:1.0.0-beta01 выпущен без изменений. Версия 1.0.0-beta01 содержит эти коммиты.

Версия 1.0.0-альфа01

23 августа 2023 г.

Выпущен androidx.wear:wear-tooling-preview:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавьте WearDevices в список допустимых устройств износа, которые можно использовать для предварительного просмотра пользовательского интерфейса ( Ib036e ).

Носить версию 1.4

Версия 1.4.0-альфа01

15 ноября 2023 г.

androidx.wear:wear:1.4.0-alpha01 выпущен. Версия 1.4.0-alpha01 содержит эти коммиты.

Исправления ошибок

  • Вертикально центрировать значок ConfirmationOverlay , когда нет сообщения. ( I496d8 )

Носить версию 1.3

Версия 1.3.0

9 августа 2023 г.

androidx.wear:wear:1.3.0 выпущен без изменений с 1.3.0-rc01 . Версия 1.3.0 содержит эти коммиты.

Важные изменения с версии 1.2.0

  • Перенесите AmbientModeSupport на использование LifecycleObserver . Отменить поддержку AmbientModeSupport в пользу новых классов, учитывающих жизненный цикл.
  • Обновите ConfirmationOverlay новыми значками/макетом, шрифтами и метриками шрифтов.
  • SwipeDismissTransitionHelper обновлен и теперь использует фоновое рисование вместо второго View для исправления ошибок при использовании FragmentContainerView
  • Анимация SwipeDismissFrameLayout обновлена, чтобы соответствовать платформе Wear и реализациям Wear Compose.
  • Исправлена ​​ошибка SwipeDismissFrameLayout , позволяющая избежать случайного отклонения фрагментов при вертикальном перемещении.
  • ArcLayout теперь поддерживает веса расширения, которые работают аналогично обычным весам Layout.
  • Поддержка layoutDirection в ArcLayout

Версия 1.3.0-rc01

21 июня 2023 г.

androidx.wear:wear:1.3.0-rc01 выпущен без изменений с 1.3.0-beta01 . Версия 1.3.0-rc01 содержит эти коммиты.

Версия 1.3.0-бета01

7 июня 2023 г.

androidx.wear:wear:1.3.0-beta01 выпущен. Версия 1.3.0-beta01 содержит эти коммиты.

Изменения API

  • Обновлен AmbientLifecycleObserver после отзывов. AmbientLifecycleObserverInterface был переименован в AmbientLifecycleObserver , а экземпляр можно получить, вызвав AmbientLifecycleObserver(...) . isAmbient стал полем, а не методом. ( I84b4f )

Исправления ошибок

  • Добавление проверок на null для обработки случаев, когда родительское представление имеет значение null при сбросе альфа и перевода в SwipeToDismiss . ( Ib0ec7 )

Версия 1.3.0-альфа05

19 апреля 2023 г.

androidx.wear:wear:1.3.0-alpha05 выпущен. Версия 1.3.0-alpha05 содержит эти коммиты.

Изменения API

  • Перенесите AmbientModeSupport на использование LifecycleObserver . Отменить поддержку AmbientModeSupport в пользу новых классов, учитывающих жизненный цикл. ( I1593b )

Исправления ошибок

  • Обновите подход фоновой сетки SwipeDismissTransitionHelper , чтобы использовать рисованные объекты вместо добавления представления для исправления ошибок при использовании FragmentContainerView . ( I851cd )

Версия 1.3.0-альфа04

25 января 2023 г.

androidx.wear:wear:1.3.0-alpha04 выпущен. Версия 1.3.0-alpha04 содержит эти коммиты.

Исправления ошибок

  • Мы обновили анимацию в SwipeDismissFrameLayout , чтобы она соответствовала реализации платформы Wear и Wear Compose. ( I7261b )

Версия 1.3.0-альфа03

24 августа 2022 г.

androidx.wear:wear:1.3.0-alpha03 выпущен. Версия 1.3.0-alpha03 содержит эти коммиты.

Новые возможности

  • ArcLayout теперь поддерживает веса расширения, которые работают аналогично обычным весам Layout. Это означает, что вы можете указать относительный размер дочерних элементов без необходимости напрямую вычислять их углы. Мы также добавили MaxAngleDegrees , который учитывается при расширении дочерних элементов с помощью весов. Например, вы можете зажать дугу несколькими дочерними элементами с весом до 90 градусов, это также будет учитывать пространство, занимаемое любыми нерасширенными элементами.

Изменения API

  • Мы добавили вес к ArcLayout.LayoutParams , который позволяет виджету расширяться, заполняя доступное пространство. Если виджетов несколько, то их доля в доступном пространстве пропорциональна их весу. Кроме того, мы добавили ArcLayout.setMaxAngleDegrees , чтобы вы могли, например, ограничить расширение до 90 градусов (обратите внимание, это не влияет на макет дочерних виджетов фиксированного размера). Наконец, ArcLayout.Widget теперь имеет setSweepAngleDegrees , который позволяет ArcLayout сообщать виджету ненулевой вес его размера. ( I75f24 )
  • Обновлена ​​возможность обнуления setColorFilter ( I99ddf , b/236498063 ).

Версия 1.3.0-альфа02

23 февраля 2022 г.

androidx.wear:wear:1.3.0-alpha02 выпущен. Версия 1.3.0-alpha02 содержит эти коммиты.

Новые возможности

  • Поддержка layoutDirection в ArcLayout ( I14d49 )
  • Улучшено сообщение описания контента для ConfirmationOverlay ( I0fdf8 ).
  • Обновите ConfirmationOverlay новыми значками/макетом. ( Если5b54 )

Исправления ошибок

  • Добавлены правила ProGuard, обеспечивающие сохранение кода, связанного с окружающей средой ( Idaa10 ).
  • Избегайте случайного отклонения фрагментов в SwipeDismissFrameLayout с помощью вертикального перемещения ( Idb6d8 ).
  • Исправление ConfirmationOverlay, когда у него нет сообщения ( I63e6f ).

Внешний вклад

  • Дэ Гю ЛИ (Samsung) — предотвращение случайного отклонения фрагментов в SwipeDismissFrameLayout с помощью вертикального перемещения ( Idb6d8 ).

Версия 1.3.0-альфа01

29 сентября 2021 г.

androidx.wear:wear:1.3.0-alpha01 выпущен. Версия 1.3.0-alpha01 содержит эти коммиты.

Исправления ошибок

  • ConfirmationOverlay теперь сдвигает значок вверх, чтобы разместить более длинные сообщения, при этом сообщение не попадает на лицевую панель устройства (или за пределы экрана). ( I54bff )

Wear Ongoing & Interactions Версия 1.1.0

Версия 1.1.0

26 февраля 2025 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0 . Версия 1.1.0 содержит эти коммиты .

Важные изменения с версии 1.0.0

  • Эта версия содержит важное исправление ошибок для приложений, работающих на Wear OS 5 (уровень API 34) или выше и ориентированных на уровень API 35 или выше.
  • Приложения должны обновиться до этой версии библиотеки, прежде чем обновлять свою targetSdkVersion до версии 35 или выше.
  • В противном случае будет выдано исключение времени выполнения.
  • Добавлено новое определение типа сопряженного устройства — none , когда устройство не сопряжено с телефоном.

Версия 1.1.0-rc01

12 февраля 2025 г.

androidx.wear:wear-phone-interactions:1.1.0-rc01 выпущен без заметных изменений со времени последней бета-версии. Версия 1.1.0-rc01 содержит эти коммиты .

Версия 1.1.0-бета01

29 января 2025 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-beta01 . Версия 1.1.0-beta01 содержит эти коммиты .

Новые возможности

В выпуске Wear Phone Interactions 1.1.0-beta01 указано, что этот выпуск библиотеки является полнофункциональным, а API заблокирован (за исключением тех случаев, когда он помечен как экспериментальный). Wear Phone Interactions 1.1 включает следующие новые функции и API:

  • Добавлено свойство redirectUrl в OAuthRequest .
  • Исправления в документации
  • Дополнительный тип в PhoneTypeHelper , чтобы указать, когда устройство не сопряжено с телефоном, вместо использования существующего неизвестного типа.

Изменения API

  • Добавлено новое определение типа сопряженного устройства — нет, если устройство не сопряжено с телефоном. ( I06cb8 )

Версия 1.1.0-альфа05

11 декабря 2024 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-alpha05 . Версия 1.1.0-alpha05 содержит эти коммиты .

Исправления ошибок

  • Исправлена ​​ошибка сбоя при работе на Wear OS 5 (уровень API 34) или выше при целевом уровне API 35 или выше. Приложения должны обновиться до этой версии библиотеки, прежде чем обновлять свою targetSdkVersion до версии 35 или выше.

Версия 1.1.0

11 декабря 2024 г.

Выпущен androidx.wear:wear-remote-interactions:1.1.0 . Версия 1.1.0 содержит эти коммиты .

Важные изменения с версии 1.0.0

  • Мы добавили RemoteActivityHelper.isRemoteActivityHelperAvailable , который помогает проверить, доступен ли функционал запуска удаленной активности. ( я107а9 )

Версия 1.1.0-rc01

16 октября 2024 г.

androidx.wear:wear-remote-interactions:1.1.0-rc01 выпущен без изменений с 1.1.0-beta01 . Версия 1.1.0-rc01 содержит эти коммиты .

Версия 1.1.0-бета01

24 июля 2024 г.

Выпущен androidx.wear:wear-remote-interactions:1.1.0-beta01 . Версия 1.1.0-beta01 содержит эти коммиты . В выпуске Wear Remote Interactions 1.3.0-beta01 указано, что этот выпуск библиотеки является полнофункциональным, а API заблокирован (за исключением тех случаев, когда он помечен как экспериментальный).

Версия 1.1.0-альфа04

10 января 2024 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-alpha04 . Версия 1.1.0-alpha04 содержит эти коммиты.

Изменения API

  • Мы добавили RemoteAuthClient.isRemoteAuthAvailable , который проверяет, доступна ли удаленная аутентификация. ( Ibc10c )

Версия 1.1.0-альфа02

10 января 2024 г.

Выпущен androidx.wear:wear-remote-interactions:1.1.0-alpha02 . Версия 1.1.0-alpha02 содержит эти коммиты.

Изменения API

  • Мы добавили RemoteActivityHelper.isRemoteActivityHelperAvailable , который помогает проверить, доступен ли функционал запуска удаленной активности. ( я107а9 )
  • Мы обновили конструктор RemoteActivityHelper , чтобы иметь необязательный параметр, совместимый с Java. ( I75554 )

Версия 1.1.0-альфа01

21 июня 2023 г.

Выпущен androidx.wear:wear-remote-interactions:1.1.0-alpha01 . Версия 1.1.0-alpha01 содержит эти коммиты.

Исправления ошибок

  • Улучшено выполнение завершения и обработка ошибок в RemoteActivityHelper . ( I60d60 )

Внешний вклад

  • Удалите зависимость Guava от wear-remote-interactions и используйте меньшие альтернативы.

Wear-Phone-Interactions версия 1.1.0-alpha03

9 марта 2022 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-alpha03 . Версия 1.1.0-alpha03 содержит эти коммиты.

Исправления ошибок

  • redirectUrl из OAuthRequest теперь возвращает пустую строку, если URL-адрес перенаправления не установлен в данном URL-адресе запроса. ( I44242 )

Взаимодействие с Wear-Phone, версия 1.1.0-alpha02

15 декабря 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-alpha02 . Версия 1.1.0-alpha02 содержит эти коммиты.

Исправления ошибок

  • Исправьте ошибки в документации RemoteAuthClient , включая ошибку в фрагменте кода и неработающую ссылку на ErrorCode ( I260e8 ).

Взаимодействие с Wear-Phone, версия 1.1.0-alpha01

15 сентября 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.1.0-alpha01 . Версия 1.1.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавлено свойство redirectUrl в OAuthRequest. ( I98840 , Ie684d )

Wear Ongoing & Interactions Версия 1.0.0

Взаимодействие с Wear-Phone, версия 1.0.1

15 декабря 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.0.1 . Версия 1.0.1 содержит эти коммиты.

Исправления ошибок

  • Исправлено исключение, возникающее в BridgingManager при попытке отключить уведомления о мосте без excludedTags .

Wear-Phone-Interactions Wear-Remote-Interactions Версия 1.0.0

15 сентября 2021 г.

Выпущены androidx.wear:wear-phone-interactions:1.0.0 и androidx.wear:wear-remote-interactions:1.0.0 . Версия 1.0.0 содержит эти коммиты.

Основные особенности версии 1.0.0

Библиотека телефонного взаимодействия содержит API для взаимодействия носимых устройств с телефонами. Он содержит следующее:

  • PhoneDeviceType , предоставляющий вспомогательные методы для определения типа телефона, с которым сопряжены текущие часы, для использования только на носимых устройствах.
  • API BridgingManager , BridgingManagerService и BridgingConfig для включения/отключения уведомлений во время выполнения и, при необходимости, установки тегов для уведомлений, которые исключены из режима моста.
  • RemoteAuthClient , обеспечивающий поддержку удаленной аутентификации на носимых устройствах вместе с поддержкой добавления расширения OAuth PKCE. Предоставляются дополнительные обработчики и вспомогательные классы для связи.

Библиотека удаленного взаимодействия содержит API для взаимодействия между носимыми устройствами и телефонами. Он содержит следующее:

  • WatchFaceConfigIntentHelper , предоставляющий вспомогательные функции для указания идентификатора и имени компонента в действиях по настройке циферблата для собеседника на телефоне.
  • Класс RemoteActivityHelper , который можно использовать для открытия намерений на других устройствах (например, с часов на телефон).

Wear-Phone-Interactions Wear-Remote-Interactions Версия 1.0.0-rc01

1 сентября 2021 г.

Выпущены androidx.wear:wear-phone-interactions:1.0.0-rc01 и androidx.wear:wear-remote-interactions:1.0.0-rc01 . Версия 1.0.0-rc01 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​ошибка, препятствующая распространению ошибок, возникающих в службах Google Play, на вызывающую сторону при использовании RemoteActivityHelper ( I60d60 ).
  • Исправить ошибку, из-за которой RemoteActivityHelper никогда не выполнял бы свое Future, если бы не было подключенных узлов или если запрошенный nodeId не был найден ( I60d60 ).

Непрерывная версия 1.1

Версия 1.1.0-альфа01

23 августа 2023 г.

Выпущен androidx.wear:wear-ongoing:1.1.0-alpha01 . Версия 1.1.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавьте поле описания контента в Текущую активность. Это будет использоваться службами доступности для описания текущей деятельности. ( I79fc6 )

Исправления ошибок

  • Добавлен @RequiresPermission для API, требующих предоставления разрешения POST_NOTIFICATIONS в SDK 33 и более поздних версиях. ( Ie542e , б/238790278 )

Текущая версия 1.0.0

1 сентября 2021 г.

Выпущен androidx.wear:wear-ongoing:1.0.0 . Версия 1.0.0 содержит эти коммиты.

Основные особенности версии 1.0.0

  • API Wear Ongoing Activity — это API для разработчиков, включая сторонних разработчиков, который используется для пометки их деятельности как «Текущей деятельности» и предоставления необходимой информации.
  • Текущие действия — это действия, которые могут выполняться в фоновом режиме часов (например, тренировки, звонки и медиа). На Wear 3 действие, объявленное как продолжающееся, станет более заметным благодаря специальному значку наложения на циферблате и другому отображению в панели запуска приложений.
  • Дополнительную информацию см. в Руководстве по постоянной деятельности Wear.

Wear-Phone-Interactions Wear-Remote-Interactions Версия 1.0.0-beta01

18 августа 2021 г.

Выпущены androidx.wear:wear-phone-interactions:1.0.0-beta01 и androidx.wear:wear-remote-interactions:1.0.0-beta01 . Версия 1.0.0-beta01 содержит эти коммиты.

Изменения API

  • Класс RemoteIntentHelper переименован в RemoteActivityHelper . Функции RemoteIntentHelper#getRemoteIntentExtraIntent и RemoteIntentHelper#getRemoteIntentNodeId переименованы в RemoteActivityHelper#getTargetIntent и RemoteActivityHelper#getTargetNodeId соответственно. ( Ид2042 )

Текущая версия 1.0.0-rc01

18 августа 2021 г.

androidx.wear:wear-ongoing:1.0.0-rc01 выпущен без изменений с 1.0.0-beta01 . Версия 1.0.0-rc01 содержит эти коммиты.

Текущая версия 1.0.0-beta01

4 августа 2021 г.

Выпущен androidx.wear:wear-ongoing:1.0.0-beta01 . Версия 1.0.0-beta01 содержит эти коммиты.

Изменения API

  • Некоторые сеттеры в OngoingActivity.Builder теперь принимают нулевой аргумент, чтобы обеспечить симметрию и согласованность сеттерам и геттерам ( I17ee5 ).

Взаимодействие с Wear-Phone, версия 1.0.0-alpha07

4 августа 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.0.0-alpha07 . Версия 1.0.0-alpha07 содержит эти коммиты.

Изменения API

  • Переименован WearTypeHelper.isChinaDevice в WearTypeHelper.isChinaBuild . ( I47302 )
  • Мы обновили библиотеку RemoteAuthClient, чтобы она автоматически выбирала redirect_uri в зависимости от типа устройства (RoW/Китай). ( I38866 )
  • Исправлена ​​ошибка, приводившая к сбою преобразования BridgingConfig в/из Bundle с ClassCastException. Добавлены модульные тесты для класса BridgingManagerService. ( I68ecb )

Wear-Remote-Interactions Версия 1.0.0-alpha06

4 августа 2021 г.

Выпущен androidx.wear:wear-remote-interactions:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит эти коммиты.

Взаимодействие с Wear-Phone, версия 1.0.0-alpha06

21 июля 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит эти коммиты.

Изменения API

  • Класс BridgingManagerSeviceBinder теперь является подклассом Service и переименован в BridgingManagerSevice. ( I9fca2 )
  • Метод RemoteAuthClient.Callback.onAuthorizationError изменен и теперь включает параметр OAuthRequest. Методы, требующие обратного вызова, теперь также требуют исполнителя для запуска обратного вызова. ( I35e11 )

Исправления ошибок

  • Мы сделали API аутентификации более понятным, добавив больше документированных параметров и по возможности используя свойства. ( I12287 )

Взаимодействие с Wear-Phone, версия 1.0.0-alpha05

30 июня 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит эти коммиты.

Исправления ошибок

  • Документированные параметры, которые следует передавать в конструкторе BridgingConfig.Builder .

Текущая версия 1.0.0-alpha06

2 июня 2021 г.

Выпущен androidx.wear:wear-ongoing:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит эти коммиты.

Изменения API

  • Добавьте поле «Название» в «Текущая деятельность». ( I7a405 )

Исправления ошибок

  • SerializationHelper.copy() теперь выполняет защитную копию информации ( I8b276 ).
  • Улучшена документация setCategory ( Ifff01f ).

Текущая версия 1.0.0-alpha05

18 мая 2021 г.

Выпущен androidx.wear:wear-ongoing:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит эти коммиты.

Изменения API

  • OngoingActivity теперь имеет геттеры для получения всех значений, заданных непосредственно через Builder (или значений по умолчанию, взятых из связанного уведомления). ( Id8ac8 )

    • Новый класс Status теперь используется для создания статуса OngoingActivity
    • OngoingActivityData и OngoingActivityStatus больше не являются частью общедоступного API.
  • Классы TextStatusPart и TimerStatusPart больше не являются частью общедоступного API. ( I57fb6 )

    • Чтобы создать Part со статическим текстом, используйте Status.TextPart .
    • Чтобы создать Part с секундомером (подсчетом), используйте Status.Stopwatch
    • Чтобы создать Part с таймером (обратным отсчетом), используйте Status.Timer

Текущая версия 1.0.0-alpha04

5 мая 2021 г.

Выпущен androidx.wear:wear-ongoing:1.0.0-alpha04 . Версия 1.0.0-alpha04 содержит эти коммиты.

Изменения API

  • В OngoingActivity методы fromExistingOngoingActivity теперь называются RecoveryOngoingActivity.
  • OngoingActivity теперь имеет полный набор геттеров, которые раньше были доступны только в OngoingActivityData. ( I0ee4d )

Wear-Remote-Interactions Версия 1.0.0-alpha05

21 июля 2021 г.

Выпущен androidx.wear:wear-remote-interactions:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит эти коммиты.

Изменения API

  • Мы добавили класс RemoteIntentHelper (ранее — RemoteIntent в библиотеке поддержки носимых устройств), который можно использовать для открытия намерений на других устройствах (например, с часов на телефон). ( I1d7e0 )

  • Класс PlayStoreAvailability был удален из библиотеки AndroidX. Чтобы определить, доступен ли магазин Play Store на подключенном телефоне, используйте метод androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType , чтобы определить, является ли подключенный телефон телефоном Android. Затем используйте метод androidx.wear.utils.WearTypeHelper.isChinaDevice , чтобы определить, является ли подключенный телефон китайским устройством. Если это телефон Android и не китайское устройство, Play Store будет доступен. ( Ie7dec )

Взаимодействие с Wear-Phone, версия 1.0.0-alpha04

7 апреля 2021 г.

Выпущен androidx.wear:wear-phone-interactions:1.0.0-alpha04 . Версия 1.0.0-alpha04 содержит эти коммиты.

Изменения API

  • Обновлены константы ErrorCode , чтобы обеспечить обратную совместимость новой библиотеки с реализацией в библиотеке поддержки носимых устройств.

Исправления ошибок

  • Исправлено исключение, вызванное новым API OAuth при запуске сеанса OAuth.

Wear-Remote-Interactions Версия 1.0.0-alpha03

7 апреля 2021 г.

Выпущен androidx.wear:wear-remote-interactions:1.0.0-alpha03 . Версия 1.0.0-alpha03 содержит эти коммиты.

Изменения API

  • PlayStoreAvailability изменен на класс, содержащий сопутствующий объект со статическими методами. Использование остается прежним.

Исправления ошибок

  • Исправлен сводный документ для WatchFaceConfigIntentHelper , позволяющий правильно отображать пример кода с реальными символами HTML.

Постоянное использование Wear-Phone-Interactions, версия 1.0.0-alpha03

10 марта 2021 г.

Выпущены androidx.wear:wear-ongoing:1.0.0-alpha03 и androidx.wear:wear-phone-interactions:1.0.0-alpha03 . Версия 1.0.0-alpha03 содержит эти коммиты.

Новые возможности

  • Перенесите OAuthClient из библиотеки поддержки носимых устройств в AndroidX. Этот перенесенный класс переименован в RemoteAuthClient и обеспечивает поддержку удаленной аутентификации на носимых устройствах, а также поддержку добавления расширения OAuth PKCE. Предоставляются дополнительные обработчики и вспомогательные классы для связи.
  • Текущие действия теперь можно связать с уведомлением, имеющим тег, с помощью нового конструктора OngoingActivity.Builder.

Изменения API

  • Добавлена ​​поддержка тегов уведомлений в библиотеке текущих действий ( I653b4 ).
  • Перенесите OAuthClient из библиотеки поддержки Wear в AndroidX и добавьте поддержку расширения OAuth PKCE ( I3eaaa ).

Wear-Remote-Interactions Версия 1.0.0-alpha02

10 марта 2021 г.

Выпущен androidx.wear:wear-remote-interactions:1.0.0-alpha02 . Версия 1.0.0-alpha02 содержит эти коммиты.

Новые возможности

  • Миграция класса PlayStoreAvailability из библиотеки поддержки носимых устройств в AndroidX, которая предоставляет API для проверки доступности Play Store на телефоне.

Исправления ошибок

  • Миграция класса PlayStoreAvailability из библиотеки поддержки носимых устройств в AndroidX. ( I69bfe )

Версия 1.0.0-альфа02

10 февраля 2021 г.

Выпущены androidx.wear:wear-ongoing:1.0.0-alpha02 и androidx.wear:wear-phone-interactions:1.0.0-alpha02 . Версия 1.0.0-alpha02 содержит эти коммиты.

Изменения API

  • Добавлена ​​поддержка более сложных статусов. Они состоят из шаблона (или нескольких) и ряда частей, которые будут использоваться для заполнения заполнителей шаблона. OngoingActivityStatus теперь имеет статический метод для создания простых статусов, состоящий только из одной части (текста или таймера), и Builder для создания более сложных статусов. ( I1fe81 )
  • Переместите классы BridgingManager и BridgingConfig из библиотеки поддержки износа в AndroidX, который предоставляет API для включения/отключения уведомлений во время выполнения и, при необходимости, установки тегов для уведомлений, исключенных из режима моста. ( I3a17e )

Версия 1.0.0-альфа01

27 января 2021 г.

Выпущены androidx.wear:wear-ongoing:1.0.0-alpha01 , androidx.wear:wear-phone-interactions:1.0.0-alpha01 и androidx.wear:wear-remote-interactions:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Изменения API

  • Перенесите библиотеку «Текущие действия» в новую подбиблиотеку: «Износ продолжается». Классы теперь находятся в пакете androidx.wear.ongoing (ранее это был androidx.wear.ongoingactivities) ( I7c029 ).

  • Создайте новую библиотеку поддержки, содержащую классы, поддерживающие взаимодействие от носимых устройств до телефонов. Первоначально он заполнен классами, перенесенными из библиотеки поддержки носимых устройств. ( Идентификатор 5180 )

  • Перенесите класс PhoneDeviceType из библиотеки поддержки носимых устройств в AndroidX. Перенесенный класс переименован в PhoneTypeHelper, который предоставляет вспомогательные методы для определения типа телефона, с которым подключены текущие часы, для использования только на носимых устройствах. ( Там же947 )

  • Создайте новую библиотеку поддержки, содержащую классы, поддерживающие взаимодействие между носимыми устройствами и телефонами. Первоначально он заполнен классами, перенесенными из библиотеки поддержки носимых устройств. ( I9deb4 )

  • Перенесите класс WatchFaceCompanion из библиотеки поддержки носимых устройств в AndroidX. Перенесенный класс переименован в WatchFaceConfigIntentHelper, который предоставляет вспомогательные функции для указания идентификатора и имени компонента в действиях по настройке циферблата в приложении-компаньоне на телефоне. Его также можно использовать локально для настройки циферблата на носимом устройстве. ( Ia455f )

Осложнения при износе и циферблат 1.0.0

Версия 1.0.0-альфа22

15 сентября 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha22 . Версия 1.0.0-alpha22 содержит эти коммиты.

Новые возможности

  • EditorSession теперь подписывается на наблюдателей жизненного цикла, поэтому вам больше не придется явно закрывать его, когда ваша активность прекращается.

Изменения API

  • EditorSession и ListenableEditorSession теперь используют StateFlows Kotlin для ComplicationSlotsState, ComplicationsPreviewData и ComplicationsDataSourceInfo. ( I761d9 )
  • EditorSession#userStyle теперь является MutableStateFlow<UserStyle> ( I32ca9 ).
  • EditorSession.createOnWatchEditorSession теперь использует наблюдатель жизненного цикла и автоматически закрывается при обнаружении onDestroy. Кроме того, createOnWatchEditorSession теперь требуется только передача действия. Идентичные изменения были также применены к ListenableEditorSession. ( Ic6b7f )
  • Конструктор CustomValueUserStyleSetting восстановлен как часть общедоступного API. ( I2e69a )
  • UserStyle теперь наследуется от Map<UserStyleSetting, UserStyleSetting.Option> , а MutableUserStyleSetting#put выдает исключение IllegalArgumentException, если параметр отсутствует в схеме или если параметр не соответствует параметру. ( Iba40f )

Версия 1.0.0-альфа21

1 сентября 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha21 . Версия 1.0.0-alpha21 содержит эти коммиты.

Изменения API

  • Все общедоступные API циферблата, клиента, редактора и усложнений теперь используют java.time.Instant для времени, а не Long, в результате чего минимальный уровень API увеличился до 26. ( I3cd48 ).
  • API циферблата и усложнений теперь используют неизменяемый ZonedDateTime вместо Calendar. ( I25cf8 )
  • Слоты ComplicationSlots теперь инициализируются с помощью NoDataComplicationData, ComplicationSlot.complicationData теперь всегда имеет значение, а CanvasComplicationDrawable.complicationData больше не имеет значения NULL. ( I4dfd6 ) Это уменьшает (но не устраняет) сложное мерцание при переключении между циферблатами.

Версия 1.0.0-альфа20

18 августа 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha20 . Версия 1.0.0-alpha20 содержит эти коммиты.

Изменения API

  • Мы добавили createFallbackPreviewData в ComplicationDataSourceInfo, который можно использовать, когда ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData возвращает значение null. ( I38c4d )
  • ComplicationDataSourceUpdateRequester превращен в интерфейс, позволяющий создавать макеты в модульных тестах. Вы можете создать конкретный объект ComplicationDataSourceUpdateRequester с помощью ComplicationDataSourceUpdateRequester.create(). ( I7da22 )
  • RenderParameters.pressedComplicationSlotIds был заменен на RenderParameters.lastComplicationTapDownEvents, который предоставляет новый класс TapEvent, содержащий тройку координат касания x, y в пикселях и отметку времени. WatchFace.TapListener.onTap заменен на onTapEvent(@TapType tapType: Int, tapEvent: TapEvent) . Кроме того, InteractiveWatchFaceClient.displayPressedAnimation был удален. ( Id87d2 )
  • Добавлена ​​явная аннотация потоков для setImportantForAccessibility ( I990fa ).
  • ComplicationSlotBoundsType был перемещен в androidx-wear-watchface. ComplicationSlotBoundsType в Wear/wear-watchface. ( I09420 )
  • Мы добавили поддержку передачи идентификаторов строковых ресурсов в UserStyleSetting и Options. Теперь это рекомендуемый способ создания этих объектов. ( I03d5f )
  • На максимальный размер схемы пользовательского стиля наложены ограничения. Также иконки в схеме не должны быть больше 400х400 пикселей. ( I3b65b )
  • Мы добавили класс MutableUserStyle для поддержки изменений в экземплярах UserStyle ( I95a40 ).
  • Мы переименовали ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient в ListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient . ( I64ce2 )
  • Мы изменили EditorState.previewComplicationsData, чтобы он содержал данные только для включенных осложнений, и добавили EditorSession.DEFAULT_PREVIEW_TIME_MILLIS , который при передаче в renderWatchFaceToBitmap или PreviewScreenshotParams запрашивает рендеринг со временем предварительного просмотра циферблата по умолчанию. ( Если7b3c )
  • Мы удалили конструкторы UserStyleSetting, принимающие CharSequence, из общедоступного API. Вместо этого рекомендуется использовать конструкторы, которым требуются идентификаторы StringResource. ( I8537b )
  • CurrentUserStyleRepository.UserStyleChangeListener теперь поддерживает преобразование SAM. ( I85989 )

Версия 1.0.0-альфа19

4 августа 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha19 . Версия 1.0.0-alpha19 содержит эти коммиты.

Изменения API

  • Мы добавили ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient , который предоставляет оболочку ListenableFuture для WatchFaceMetadataClient.createWatchFaceMetadataClient . ( I5fa37 )
  • UserStyleOption.getOptionForId теперь принимает UserStyleOption.Id вместо массива байтов. ( I469be )
  • Предоставьте константы BooleanOption.TRUE и BooleanOption.FALSE и запретите создание экземпляра ( I46e09 ).
  • Методы в Wear-Watchface-Client, которые могут генерировать RemoteException, теперь снабжены соответствующими аннотациями. ( Ib8438 )
  • Для единообразия мы переименовали EditorSession.createOnWatchEditingSession в createOnWatchEditorSession , аналогично createHeadlessEditingSession теперь называется createHeadlessEditorSession . Их обертки из гуавы также были переименованы. ( I1526b )
  • EditorSession теперь является интерфейсом, а ListenableEditorSession.commitChangesOnClose теперь правильно делегирован. ( I7dc3e )
  • Теперь мы отклоняем любую схему пользовательского стиля, имеющую настройки или параметры с конфликтующими идентификаторами ( Ic2715 ).
  • Мы добавили перегруженный UserStyle.get , который принимает UserStyleSetting.Id . ( I2aa0f )

Версия 1.0.0-альфа18

21 июля 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha18 . Версия 1.0.0-alpha18 содержит эти коммиты.

Изменения API

  • Мы переместили ComplicationHelperActivity в библиотеку androidx.wear:wear-watchface . ( I39e76 )
  • Для единообразия и ясности ComplicationProvider был переименован в ComplicationDataSource , и все классы, в имени которых есть Provider, были переименованы аналогичным образом. ( Iaef0b )
  • CanvasComplication.isHighlighted был перемещен в RenderParameters.pressedComplicationSlotIds Это шаг к тому, чтобы сделать CanvasComplication не сохраняющим состояние. Для поддержки этого изменения CanvasComplication.render теперь также принимает slotId в качестве параметра, и теперь мы передаем ComplicationSlot в GlesTextureComplication . ( I50e6e )
  • Мы добавили headlessDeviceConfig в EditorRequest . Если этот параметр не равен нулю, этот параметр используется для создания безголового экземпляра для поддержки EditorSession, а не для воздействия на интерактивный экземпляр. Это позволяет вызывать редактор для циферблата, который не является текущим. ( I0a820 )
  • Мы добавили экспериментальный WatchFaceMetadataClient , который позволяет эффективно извлекать статические метаданные циферблата, такие как UserStyleSchema , и исправили сведения о ComplicationSlots . ( I6bfdf )
  • Мы переименовали CanvasRenderer.uiThreadInit в init. ( I6fff9 )
  • Мы добавили PreviewScreenshotParams — необязательный новый параметр для EditorRequest, который инструктирует EditorSession сделать снимок экрана предварительного просмотра при фиксации с этим параметром. Изображение предварительного просмотра отображается в EditorState.previewImage . ( Ic2c16 )

Исправления ошибок

  • Разработчикам больше не нужно добавлять ComplicationHelperActivity в свой манифест. ( I6f0c2 )

Версия 1.0.0-альфа17

30 июня 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha17 . Версия 1.0.0-alpha17 содержит эти коммиты.

Новые возможности

  • В GlesRenderer makeUiThreadContextCurrent и makeBackgroundThreadContextCurrent были заменены на runUiThreadGlCommands и runBackgroundThreadGlCommands , которые оба принимают Runnable . Библиотека гарантирует, что в любой момент времени выполняется только одна выполняемая команда GL.

  • Чтобы упростить инициализацию UiThread, мы добавили CanvasRenderer.uiThreadInit , который вызывается один раз в UiThread перед любыми вызовами рендеринга. Мы также добавили onRendererCreated в CanvasComplication , что упрощает обмен состоянием для Renderer и CanvasComplication .

  • Для ясности мы переименовали Complication в ComplicationSlot , а complicationId — в complicationSlotId или complicationInstanceId в зависимости от использования.

Изменения API

  • Для ясности мы переименовали Complication в ComplicationSlot , а complicationId — в complicationSlotId или complicationInstanceId в зависимости от использования. Классы, использующие усложнение, были аналогичным образом переименованы, например, ComplicationsManager теперь называется ComplicationSlotsManager. ( I4da44 )
  • В GlesRenderer makeUiThreadContextCurrent и makeBackgroundThreadContextCurrent были заменены на runUiThreadGlCommands и runBackgroundThreadGlCommands , которые принимают Runnable . Эти функции необходимы только в том случае, если вам нужно выполнять вызовы GL вне рендеринга, runBackgroundThreadGlCommands и onUiThreadGlSurfaceCreated . Это необходимо, поскольку в одном процессе может быть несколько GlesRenderer, каждый со своим собственным контекстом, возможно, из разных циферблатов. Кроме того, доступ к общему текущему контексту GL теперь синхронизирован. ( I04d59 )
  • Мы добавили CanvasRenderer.uiThreadInit , который вызывается один раз в UiThread перед любыми вызовами рендеринга. Также для ясности в GlesRenderer мы переименовали onGlContextCreated в onBackgroundThreadGlContextCreated , а onGlSurfaceCreated в onUiThreadGlSurfaceCreated . ( Если86d0 )
  • HeadlessWatchFaceClient и InteractiveWatchFaceClient getComplicationsSlotState переименованы в getComplicationSlotsState . В ComplicationSlot : createRoundRectComplicationBuilder , createBackgroundComplicationBuilder и createEdgeComplicationBuilder были переименованы в createRoundRectComplicationSlotBuilder , createBackgroundComplicationSlotBuilder и createEdgeComplicationSlotBuilder соответственно. ( Ib9adc )
  • Мы добавили onRendererCreated в CanvasComplication, что упрощает обмен состоянием для Renderer и CanvasComplication. ( I5e1ac )

Версия 1.0.0-альфа16

16 июня 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha16 . Версия 1.0.0-alpha16 содержит эти коммиты.

Новые возможности

  • Мы исправили ряд ошибок, связанных с недавними изменениями модели потоков, а также устранили другие проблемы с редактором циферблата.

Исправления ошибок

  • Предотвратить NPE в onComplicationProviderChooserResult ( b/189594557 )
  • Исправление проблем с устаревшими поверхностями и функцией drawBlack ( b/189452267 ).
  • Исправлена ​​гонка при доступе к complicationsManager.watchState ( b/189457893 ).
  • Исправлена ​​ошибка времени жизни фонового потока ( b/189445428 ).
  • Исправление проблем с редактором циферблатов Pre-R ( b/189126313 )
  • Не обновлять параметры прямой загрузки при изменении стиля редактора ( b/187177307 )

Версия 1.0.0-альфа15

2 июня 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha15 . Версия 1.0.0-alpha15 содержит эти коммиты.

Новые возможности

Большая часть инициализации циферблата теперь выполняется в фоновом потоке, однако после загрузки весь рендеринг циферблата и т. д. выполняется в UiThread. Между загрузкой и рендерингом существует барьер памяти, поэтому большинству пользовательских циферблатов не нужно делать ничего особенного. Циферблаты, использующие GLES, могут быть исключением, поскольку контекст зависит от потока, и мы создаем два связанных контекста, чтобы можно было загружать ресурсы GL (например, текстуры и шейдеры) в фоновый поток и использовать их в UiThread.

Мы разделили создание циферблатов на три функции: createUserStyleSchema, createComplicationsManager и createWatchFace. Мы предполагаем, что createUserStyleSchema и createComplicationsManager работают быстро, а для загрузки ресурсов createWatchFace может потребоваться некоторое время. Воспользовавшись этим, мы представили WatchFaceControlClient.getDefaultProviderPoliciesAndType , который возвращает карту идентификаторов осложнений в DefaultComplicationProviderPolicies и ComplicationType по умолчанию. Это быстрее, чем создание автономного экземпляра, поскольку для выполнения запроса не требуется полностью инициализировать циферблат.

Наконец, усложнения теперь создаются с помощью CanvasComplicationFactory, который позволяет лениво создавать средства визуализации CanvasComplication.

Изменения API

  • @TargetApi заменен на @RequiresApi . ( I0184a , б/187447093 , б/187447094 )
  • Мы представили WatchFaceControlClient.getDefaultProviderPoliciesAndType , который возвращает карту идентификаторов осложнений в DefaultComplicationProviderPolicies и ComplicationType по умолчанию. Там, где это возможно, используется быстрый путь, позволяющий избежать полного построения циферблата. Чтобы облегчить это, в API WatchFaceService пришлось добавить два новых метода: createUserStyleSchema и createComplicationsManager, результаты которых передаются в createWatchFace. Кроме того, сложности теперь создаются с помощью CanvasComplicationFactory, который позволяет лениво создавать средства визуализации CanvasComplication. ( Iad6c1 )
  • Мы удалили MOST_RECENT_APP из SystemProviders. ( I3df00 )
  • ObservableWatchData теперь является запечатанным классом. ( Ic940d )
  • CanvasComplicationFactory.create (который обычно привязан к io) теперь вызывается в фоновом потоке для каждого осложнения перед началом рендеринга потока пользовательского интерфейса. Между построением и рендерингом существует барьер памяти, поэтому специальные примитивы потоков не требуются. ( Ia18f2 )
  • Создание циферблата теперь выполняется в фоновом потоке, хотя весь рендеринг выполняется в потоке пользовательского интерфейса, для этого GlesRenderer поддерживает два связанных контекста. WatchFaceControlClient.createHeadlessWatchFaceClient и WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient могут разрешиться до завершения WatchFaceService.createWatchFace. Последующие вызовы API будут блокироваться до завершения инициализации watchFace. ( ID9f41 )
  • EXPANSION_DP и STROKE_WIDTH_DP больше не отображаются в api.txt. ( I54801 )
  • Мы заставили EditorSession.createOnWatchEditingSession выдавать исключение TimeoutCancellationException в случае ошибки вместо отправки нулевого сеанса. Кроме того, возвращаемое значение EditorRequest.createFromIntent и EditorSession.createOnWatchEditingSession теперь имеет значение NonNull. ( I41eb4 )

Версия 1.0.0-альфа14

18 мая 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha14 . Версия 1.0.0-alpha14 содержит эти коммиты.

Новые возможности

  • EditorSession.openComplicationProviderChooser теперь возвращает ChosenComplicationProvider, который содержит идентификатор сложности, ComplicationProviderInfo и Bundle, содержащий любые дополнительные дополнения, возвращаемые средством выбора поставщика.
  • Кроме того, мы постоянно переносим код на Kotlin, и большая часть API циферблата теперь определена в Kotlin.

Изменения API

  • Свойства GlesRenderer eglContext и eglDisplay теперь не допускают значения NULL. О любых ошибках GL теперь сообщается через GlesRenderer.GlesException , а не через RuntimeExceptions. ( Ib1005 )
  • Мы перенесли androidx.wear.watchface.complications.rendering.ComplicationDrawable с Java на Kotlin ( Ibc3eb ).
  • Мы перенесли androidx.wear.watchface.complications.rendering.ComplicationStyle с Java на Kotlin ( I3375e ).
  • Мы добавили информацию о поставщике осложнений для каждого осложнения в EditorSession. ( I37f14 )
  • Мы расширили результат EditorSession.openComplicationProviderChooser , включив в него информацию, возвращаемую выбранным. ( Iead6d )

Осложнения при износе и циферблат версии 1.0.0-alpha13

5 мая 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha13 . Версия 1.0.0-alpha13 содержит эти коммиты.

Новые возможности

  • Циферблаты часов могут иметь важные визуальные элементы, помимо отображения времени и осложнений. Чтобы обеспечить для этого поддержку чтения с экрана, циферблат теперь может указывать доступность ContentDescriptionLabels через свойство extraContentDescriptionLabels средства рендеринга. Кроме того, для управления упорядочиванием ContentDescriptionLabels в функции accessibilityTraversalIndex добавлены сложности. Это можно изменить с помощью ComplicationsUserStyleSetting.

  • Чтобы побудить разработчиков внимательно относиться к программам чтения с экрана, мы сделали поля contentDescription ShortTextComplicationData.Builder , LongTextComplicationData.Builder и RangedValueComplicationData.Builder обязательными для передачи в их конструкторы. Если ComplicationText.EMPTY передается в качестве contentDescription , contentDescription будет автоматически сгенерирован из текста и заголовка.

  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient теперь генерирует исключение ServiceStartFailureException , если циферблат генерирует исключение во время инициализации. Это значительно упрощает диагностику проблем во время запуска циферблата.

Изменения API

  • Мы добавили поддержку нулевого имени компонента в ComplicationProviderInfo, что необходимо для поддержки старых версий Wear OS. ( I744d2 )
  • Мы перенесли androidx.wear.complications.SystemProviders с Java на Kotlin. ( Ia1f8b )
  • Мы скрыли из публичного API все классы, находящиеся в android.support.wearable.complications, и создали соответствующие оболочки в AndroidX там, где это необходимо. ( I7bd50 )
  • Мы переименовали метод в TimeDifferenceComplicationText.Builder с setMinimumUnit на setMinimalTimeUnit . ( I20c64 )
  • Мы сделали поля contentDescription ShortTextComplicationData.Builder , LongTextComplicationData.Builder и RangedValueComplicationData.Builder обязательными для передачи в конструктор. ( I8cb69 )
  • Мы переименовали ComplicationProviderService.onComplicationUpdate в onComplicationRequest и инкапсулировали идентификатор и параметр типа этого метода в данные ComplicationRequest. Соответствующий прослушиватель был переименован в ComplicationRequestListener и его метод ComplicationRequestListener.onComplicationData. ( Iaf146 )
  • Мы удалили метод isActiveAt из ComplicationData и предоставили вместо него поле validTimeRange . Этот вызов метода можно заменить на validTimeRange.contains . ( I65936 )
  • Мы изменили описание метода ComplicationProviderService.onComplicationActivated, чтобы он мог получать ComplicationType вместо int. ( Idb5ff )
  • ProviderUpdateRequester перенесен с Java на Koltin. ( Ibce13 )
  • GlesRender.makeContextCurrent теперь общедоступен. Коду циферблата может потребоваться выполнить вызовы gl за пределами рендеринга и onGlContextCreated, и поскольку может существовать как интерактивный, так и безгласный контекст, необходимо вызвать это. ( I8a43c )
  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient теперь генерирует исключение ServiceStartFailureException, если циферблат генерирует исключение во время инициализации. Кроме того, WatchFaceService теперь выдает исключение, если createWatchFace занимает больше 6 секунд. ( I59b2f )
  • Мы удалили неиспользуемое свойство id из GlesTextureComplication . ( I28958 )
  • Теперь циферблат может указывать доступность ContentDescriptionLabels через свойство extraContentDescriptionLabels Renderer . Помимо управления порядком ContentDescriptionLabels, к усложнениям добавлен доступностьTraversalIndex. Это можно изменить с помощью ComplicationsUserStyleSetting. ( Ib7362 )
  • Разверните документацию по обработке событий касания на циферблате. ( Iaf31e )

Исправления ошибок

  • EditorSession.getComplicationsPreviewData() теперь возвращает карту для каждого, а не только непустого усложнения. Экземпляр EmptyComplicationData используется для пустых осложнений. ( I1ef7e )

Осложнения при износе и циферблат версии 1.0.0-alpha12

21 апреля 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha12 . Версия 1.0.0-alpha12 содержит эти коммиты.

Новые возможности

Редакторам циферблатов необходимо выделять части циферблата, чтобы понять, какой аспект часов настраивается. Мы расширили RenderParameters, чтобы можно было выделять стили, а также сложности. Появился новый дополнительный HighlightLayer, который предназначен для матирования поверх циферблата с альфа-прозрачностью (API скриншота может сделать это матирование за вас или предоставить HighlightLayer самостоятельно для максимальной гибкости). Например, предположим, что у вас есть стиль, который позволяет вам настраивать внешний вид стрелок часов, ваш рендерер в своем renderHighlightLayer может рисовать контур вокруг них.

Чтобы стимулировать поддержку специальных возможностей поставщиком усложнения, мы сделали поле contentDescription для PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder и SmallImageComplicationData.Builder обязательным аргументом конструктора. ComplicationTapFilter и Complication.createEdgeComplicationBuilder были добавлены для поддержки усложнений по краям (рисующихся по краю экрана). Рендеринг и тестирование пограничных сложностей остается на усмотрение циферблата. Проверка попадания Edge не поддерживается сопутствующим редактором.

Изменения API

  • Добавлен префикс PROVIDER_ к константам в SystemProviders. ( I1e773 )
  • Мы сделали поля contentDescription PhotoImageComplicationData.Builder , MonochromaticImageComplicationData.Builder и SmallImageComplicationData.Builder обязательными для передачи в конструктор. ( I9643a )
  • ProviderInfoRetriever.requestPreviewComplicationData был переименован в retrievePreviewComplicationData . ( I911ee )
  • ComplicationProviderService перенесена с Java на Koltin. ( I849f2 )
  • Метод ComplicationProviderService.onBind теперь окончательный ( I39af5 ).
  • Мы восстановили интерфейс CanvasComplication и переместили CanvasComplicaitonDrawable , GlesTextureComplication и ComplicationHighlightRenderer в wear-watchface-complications-rendering . ( I84670 )
  • RenderParameters был реорганизован для поддержки расширенного рендеринга светлых участков. Теперь можно запросить отрисовку бликов для стилей, а также всей или отдельной сложности. Кроме того, CanvasRenderer и GlesRenderer имеют новый абстрактный метод renderHighlightLayer для рендеринга любого выделения, запрошенного редактором. Слой переименован в WatchFaceLayer. ( Ic2444 )
  • Для поддержки усложнений ребер были добавлены ComplicationTapFilter и Complication.createEdgeComplicationBuilder . Рендеринг и тестирование пограничных осложнений остается на усмотрение циферблата. Проверка нажатия не поддерживается в редакторах. ( Я6604 )
  • Для DoubleRangeUserStyleSetting и LongRangeUserStyleSetting : defaultValue , maximumValue minimumValue теперь являются свойствами Kotlin. Кроме того, были удалены такие функции UserStyleSetting.Option , как toBooleanOption, toCoplicationOptions, toListOption и подобные. ( I52899 )
  • Добавьте размер подбородка в свойства устройства, доступные на циферблате. ( I76e1e )
  • Конструктор ComplicationHighlightRenderer теперь принимает параметры outlineExpansion и outlineStrokeWidth . ( I87009 )
  • ComplicationDrawable.getNoDataText теперь является частью общедоступного API. ( I00598 )

Версия 1.0.0-альфа11

7 апреля 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha11 . Версия 1.0.0-alpha11 содержит эти коммиты.

Новые возможности

  • API-интерфейсы циферблата были улучшены. Большинство изменений представляют собой простые переименования, но InteractiveWatchFaceWcsClient и InteractiveWatchFaceSysUiClient были объединены в InteractiveWatchFaceClient .

Изменения API

  • ContentDescriptionLabel.text теперь является ComplicationText, а не старой библиотекой поддержки носимых устройств TimeDependentText. ( I80c03 )
  • Наличие SystemProviders.GOOGLE_PAY на всех устройствах Android R не гарантируется, поэтому он был удален из списка. Этот провайдер по-прежнему можно использовать через DefaultComplicationProviderPolicy ( If01b5 ).
  • Для обеспечения единообразия мы переименовали ComplicationUpdateCallback в ComplicationUpdateListener. ( I61ec7 )
  • Карта формата проводов UserStyle была изменена на Map<String, byte[]> , а для удобства в общедоступный API был добавлен класс UserStyleData , который теперь используется клиентом Wear-watchface-client и Wear-watchface-editor. Кроме того, CustomValueUserStyleSetting.CustomValueOption.value теперь имеет значение byte[] вместо String . ( Яа103 )
  • UserStyleSetting и UserStyleSetting.Option теперь используют UserStyleSetting.Id и UserStyleSetting.Option.Id соответственно для хранения своих идентификаторов, а не строки. ( I63f72 )
  • InteractiveWatchFaceClient.SystemState переименован в WatchUiState . ( I6a4e0 )
  • InteractiveWatchFaceWcsClient и InteractiveWatchFaceSysUiClient были объединены, поскольку было сложно объяснить разделение ответственности ( Iff3fa )
  • Значения перечисления слоев были переименованы для ясности. Layer#TOP_LAYER теперь называется Layer#COMPLICATIONS_OVERLAY , а Layer#BASE_LAYER теперь называется Layer#BASE ( Ia144e ).
  • UserStyleListener переименован в UserStyleChangeListener ( I18524 ).
  • UserStyleRepository переименован в CurrentUserStyleRepository ( I6ea53 ).
  • InteractiveWatchFaceWcsClient.updateInstance переименован в updateWatchfaceInstance . ( I321dc )
  • События WatchFace TapType были переименованы в соответствии с MotionEvents/Compose. ( I0dfd0 )
  • takeWatchfaceScreenshot переименован в renderWatchFaceToBitmap, а takeComplicationScreenshot переименован в renderComplicationToBitmap ( Ie0697 ).
  • Интерфейс CanvasComplication был удален в пользу открытого класса CanvasComplicationDrawable. ( I1f81f )
  • WatcfaceControlServiceFactory был удален из общедоступного API. ( I1f8d3 )
  • Мы переименовали CanvasComplication.setData в CanvasComplication.loadData . ( Если1239 )
  • ComplicationsManager.bringAttentionToComplication переименован в displayPressedAnimation . ( Ic4297 )
  • WatchFaceService.createWatchFace теперь имеет аннотацию @UiThread . ( Ib54c2 )
  • Изменено имя параметра CanvasComplicationDrawable, чтобы исправить ошибку. ( I50dac )
  • Мы добавили HeadlessWatchFaceClient.toBundle() и HeadlessWatchFaceClient.createFromBundle для поддержки отправки HeadlessWatchFaceClient через AIDL. ( I07c35 )
  • HeadlessWatchFaceClient и InteractiveWatchFaceClient теперь имеют ClientDisconnectListener и isConnectionAlive(), которые позволяют вам наблюдать, если соединение разорвано по какой-либо причине (например, уничтожен циферблат). ( Ie446d )
  • WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync теперь является функцией приостановки и переименована в getOrCreateInteractiveWatchFaceClient . ( Ib745d )
  • EditorState.commitChanges и hasCommitChanges() были переименованы в shouldCommitChanges() . ( I06e04 )
  • previewComplicationData был переименован в previewComplicationsData , чтобы указать на наличие (обычно) более одного осложнения на карте. ( I56c06 )
  • InteractiveWatchFaceWcsClient.bringAttentionToComplication был переименован в displayPressedAnimation для согласованности с ComplicationsManager.displayPressedAnimation . ( Ic9999 )
  • Все экземпляры идентификатора экземпляра циферблата инкапсулированы в новый класс WatchFaceId ( I45fdf ).
  • Свойство complicationState было переименовано в complicationsState для обозначения множественности. ( ID07 )
  • Мы удалили различные преобразования Binder Wear-Watchface-Client, они должны быть необходимы. ( Icc4c0 )
  • Для обеспечения единообразия EditorServiceClient был переработан для использования прослушивателей вместо наблюдателей. ( Мек3а4 )
  • Мы добавили пару недостающих аннотаций @Px в InteractiveWatchFaceSysUiClient и WatchFaceControlClient . ( I3277a )
  • EditorObserverCallback переименован в EditorObserverListener для обеспечения единообразия. ( Ie572d )
  • EditorState.watchFaceInstanceId ограничен уровнем Android R API и выше и больше не может иметь значение NULL. ( Id52bb )
  • EditorSession.launchComplicationProviderChooser переименован в openComplicationProviderChooser . ( I9d441 )
  • EditorSession.createOnWatchEditingSessionAsync был переименован в createOnWatchEditingSession и теперь является функцией приостановки. ( Id257b )
  • Добавлено несколько недостающих аннотаций @UiThread в EditorSession . ( I6935c )
  • UserStyleSetting.affectsLayers переименован affectedLayers . ( I6e22b )

Версия 1.0.0-альфа10

24 марта 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha10 . Версия 1.0.0-alpha10 содержит эти коммиты.

Новые возможности

  • Теперь можно создавать открытые объекты gl (например, текстуры) во время WatchFaceService.createWatchFace, поскольку GlesRenderer теперь требует явного вызова initOpenGLContext, который можно выполнить внутри createWatchFace.

Изменения API

  • IdAndComplicationData был немного неудобным и был удален из общедоступного API. Классы и интерфейсы, которые его использовали, были реорганизованы. ( I4c928 )
  • Мы заменили ReferenceTime на CountUpTimeReference и CountDownTimeReference , которые более понятны. ( Ib66c6 )
  • Добавлены некоторые недостающие аннотации @Px и @ColorInt . ( I9bbc3 )
  • Complication.complicationConfigExtras теперь не имеет значения NULL и по умолчанию имеет значение Bundle.EMPTY . ( Iad04f )
  • GlesRenderer теперь требует, чтобы вы вызывали initOpenGLContext после создания. Эта функция была внутренней деталью, но теперь она находится в общедоступном API, что позволяет ранее вызывать GL внутри createWatchFace. ( I726c2 )
  • Мы удалили Complication.setRenderer , так как он не нужен. ( Ie992f )
  • Complicaiton.setComplicationBounds больше не является частью общедоступного API. Если вам нужно настроить положение осложнения, это можно сделать через ComplicationsUserStyleSetting . ( Ibd9e5 )
  • ComplicationsManager.TapCallback.onComplicationSingleTapped переименован в onComplicationTapped . ( I3a55c )
  • ComplicationOutlineRenderer.drawComplicationSelectOutline переименован в drawComplicationOutline . ( I14b88 )

Версия 1.0.0-альфа09

10 марта 2021 г.

Выпущены androidx.wear:wear-complications-*:1.0.0-alpha09 и androidx.wear:wear-watchface-*:1.0.0-alpha09 . Версия 1.0.0-alpha09 содержит эти коммиты.

Новые возможности

  • Интерфейс между хостом WCS/SysUI и циферблатом изменился. Теперь редактор может определить, будет ли изменение стиля включать или отключать усложнение (включено = первоначально включено плюс любое переопределение из ComplicationsUserStyleSetting). Кроме того, EditorService.closeEditor позволяет SysUI удаленно закрывать редактор циферблата, если это необходимо.
  • Кроме того, InteractiveWatchFaceWcsClient.setUserStyle с более мощной командой updateInstance , которая: изменяет идентификатор экземпляра, устанавливает стиль и устраняет осложнения за один раз.

Изменения API

  • TraceEvents были добавлены в библиотеки циферблатов. ( I1a141 )
  • ComplicationState теперь имеет новое свойство initiallyEnabled , которое полезно для прогнозирования последствий переключения стилей. ( I8c905 )
  • Мы заменили InteractiveWatchFaceWcsClient.setUserStyle более мощной командой updateInstance , которая: изменяет идентификатор экземпляра, устанавливает стиль и устраняет сложности. ( Ife6f6 )
  • API-интерфейсы скриншотов WatchFaceClient больше не сжимают снимки экрана, поскольку это было медленно, вместо этого мы оставляем любую постобработку на усмотрение вызывающей стороны. ( Id35af )
  • Теперь можно удаленно закрыть редактор циферблата с помощью EditorService.closeEditor . ( Ic5aa4 )
  • Добавлены аннотации обнуляемости ( Ic16ed ).

Версия 1.0.0-альфа08

24 февраля 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha08 . Версия 1.0.0-alpha08 содержит эти коммиты.

Новые возможности

  • Некоторые циферблаты разработаны с учетом одной или нескольких конкретных усложнений. Для поддержки этого мы добавили Complication.Builder#setFixedComplicationProvider, который, если установлено значение true, не позволяет пользователю изменять усложнение в этом слоте.
  • Библиотеки циферблатов в первую очередь созданы на Kotlin и используют сопрограммы (например, функции приостановки). Для пользователей Java мы предоставили оболочки ListenableFuture для улучшения взаимодействия в следующих библиотеках: Wear/wear-watchface-guava, Wear/wear-watchface-client-guava и Wear/wear-watchface-editor-guava.

Изменения API

  • Мы удалили поддержку двойного нажатия при возникновении сложностей при запуске средства выбора поставщика. Эта функция не была распространена в циферблатах и ​​усложняла реализацию SysUI. ( I3ef24 )
  • Методы ProviderInfoRetriever могут вызвать исключение ServiceDisconnectedException, если связующее неожиданно закрывается. ( Ib2cc4 )
  • Начиная с Android 11, существуют ограничения на запуск ProviderChooser. Кроме того, мы хотели бы, чтобы редакторы создавались с использованием нового wear-watchface-editor поэтому ComplicationHelperActivity удаляется из общедоступного API. ( Ib19c1 )
  • Удалите статические методы ComplicationText в пользу сборщиков. ( Ibe399 )
  • Мы представили оболочки guava ListenableFuture для различных приостановленных методов библиотеки циферблатов. ( I16b2c )
  • Для ясности API мы добавили в RenderParameters вторичный конструктор, который не требует оттенка, для использования с LayerModes, отличными от LayerMode.DRAW_OUTLINED . ( I497ea )
  • Ранее ListUserStyleSetting отличался от других, поскольку имел аргумент по умолчанию. Теперь все конструкторы подкласса StyleSetting принимают значение по умолчанию последним. ( I9dbfd )
  • CanvasComplication был реорганизован для использования скрытого метода, что упрощает реализацию подкласса ( I5b321 ).
  • Мы провели рефакторинг EditorResult в пользу новых EditorService и EditorSession.broadcastState() для потоковой передачи обновлений наблюдателю (обычно SysUI). ( Ic4370 )
  • Некоторые циферблаты построены на основе определенного усложнения и являются неотъемлемой частью циферблата, где поставщик не настраивается пользователем. Для поддержки этого мы добавили Complication.Builder#setFixedComplicationProvider . ( I4509e )
  • EditorRequest теперь указывает имя пакета, а не ComponentName, поскольку SysUI было неудобно искать имя класса редактора, а нам действительно нужно только имя пакета. ( Ib6814 )

Версия 1.0.0-альфа07

10 февраля 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha07 . Версия 1.0.0-alpha07 содержит эти коммиты.

Новые возможности

  • WatchFaceService.createWatchFace теперь является функцией приостановки, что означает, что циферблату больше не нужно блокировать поток пользовательского интерфейса во время ожидания ввода-вывода. Аналогично, редактор циферблата износа и данные о осложнениях износа.

Изменения API

  • Удалите класс PhotoImage и используйте Icon напрямую. ( I8a70b )
  • Предоставьте validTimeRange для ComplicationData. ( I91366 )
  • Сделайте атрибуты, подобные изображениям, более явными. ( I81700 )
  • Wear-watchface-editor и Wear-complications-data были переработаны для использования функций приостановки вместо сопрограмм. Оболочки Rx Java и совместимости с будущими версиями. ( Если3c5f )
  • ProviderInfoRetriever теперь выдает PreviewNotAvailableException, если requestPreviewComplicationData не может вернуть данные предварительного просмотра из-за проблем с подключением или отсутствия поддержки API. ( I4964d )
  • WatchFaceControlService::createWatchFaceControlClient теперь является приостановленной функцией, а getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient теперь вызывается getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync, возвращающим Deferred<InteractiveWatchFaceWcsClient> . Оболочки RX Java и Future Compat будут следовать. ( I5d461 )
  • Переименуйте CATEGORY_PROVIDER_CONFIG_ACTION в CATEGORY_PROVIDER_CONFIG . ( I7c068 )
  • Обратите внимание: функция createOnWatchEditingSession теперь приостановлена, поскольку циферблат иногда недоступен до тех пор, пока не начнется работа редактора. ( Ида9аа )
  • WatchFaceService.createWatchFace теперь является функцией приостановки, которая позволяет выполнять асинхронную инициализацию, раньше вам приходилось блокировать основной поток. ( Если076а )
  • В UserStyle теперь есть оператор массива, и мы добавили помощники приведения типов в UserStyle.Option. ( I35036 )
  • Мы исправили ошибку сортировки с использованием форматов UserStyle, изменившую некоторые нестабильные скрытые API. ( I8be09 )
  • Мы добавили CustomValueUserStyleSetting, который позволяет хранить одну строку, специфичную для приложения, в UserStyle. Редакторы циферблатов по умолчанию игнорируют это значение. ( Ic04d2 )
  • InstanceID не передается в дополнительных функциях для R и более старых версий Android WearOS, которые мы не можем обновить. Чтобы поддержать это, мы теперь разрешаем InstancID иметь значение null. ( Id8b78 )
  • EditorRequest теперь включает редактор ComponentName, который установлен как компонент в WatchFaceEditorContract.createIntent ( I3cd06 ).
  • EditorResult циферблата теперь включает в себя предварительный просмотр ComplicationData, позволяющий вызывающему абоненту сделать снимок экрана циферблата после редактирования. ( I2c561 )

Исправления ошибок

  • Добавлены переопределения toString() для UserStyle, UserStyleSetting и UserStyleSchema, что делает работу с этими классами немного удобнее. ( I9f5ec )

Версия 1.0.0-альфа06

27 января 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит эти коммиты.

Новые возможности

  • Мы представили новую библиотеку Wear/Wear-Watchface-editor, которая позволяет разработчикам циферблатов и, возможно, OEM-производителям создавать редактор стилей и сложностей. SysUI отправит намерение на циферблат, который будет использовать новый класс EditorSession для доступа к сведениям WatchFace и записи результата через Activity.setWatchRequestResult. Для поддержки этого мы добавили ProviderInfoRetriever.requestPreviewComplicationData, который позволяет редакторам циферблатов запрашивать предварительный просмотр ComplicationData. Преимущество предварительного просмотра ComplicationData заключается в том, что в отличие от живых данных вам не нужно беспокоиться об отображении диалоговых окон разрешений при рендеринге вашего редактора (обратите внимание, что если пользователь выбирает поставщика с разрешением, ему все равно будет предложено предоставить это разрешение).

Изменения API

  • ComplicationProviderInfo теперь имеет поле для ComponentName поставщика, поддержка этого поля будет добавлена ​​в WearOS позднее, а пока оно будет иметь значение NULL. ( Id8fc4 )
  • Мы добавили ProviderInfoRetriever.requestPreviewComplicationData, который позволяет редакторам циферблатов запрашивать предварительный просмотр ComplicationData. Это полезно, поскольку для интерактивных осложнений могут потребоваться разрешения, и теперь вы можете отображать данные предварительного просмотра для неактивных осложнений. ( I2e1df )
  • ComplicationManager теперь является необязательным параметром конструктора WatchFace, и порядок аргументов изменен, чтобы это обеспечить. ( I66c76 )
  • Мы добавили дополнительный пакет в раздел «Осложнения», который, если он установлен, объединяется с намерением, отправленным для запуска действия по выбору поставщика. ( Ifd4ad )
  • Мы добавили новую библиотеку wear-watchface-editor для поддержки редакторов на циферблате и редакторов, размещенных в SysUi. SysUI запустит эти редакторы, отправив намерение. Служба активности циферблата может использовать новый класс EditorSession для доступа к сведениям WatchFace и записи результата через Activity.setWatchRequestResult. ( I2110d )
  • LayerMode.DRAW_HIGHLIGHTED теперь называется LayerMode.DRAW_OUTLINED, а RenderParameters.highlightComplicationId теперь называется RenderParameters.selectedComplicationId, который выделяет указанное усложнение в дополнение к контуру. ( I90a40 )
  • Будущее WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient теперь может разрешаться с помощью исключения ServiceStartFailureException, если служба завершает работу во время ожидания создания циферблата. ( I0f509 )
  • EditorSession.complicationPreviewData теперь является ListenableFuture, поскольку получение этих данных является асинхронным процессом. ( Iead9d )

Исправления ошибок

  • Мы удаляем неиспользуемые поля из ComplicationOverlay, оставляя включенными и ComplicationBounds. ( I17b71 )

Версия 1.0.0-альфа05

13 января 2021 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит эти коммиты.

Новые возможности

Циферблаты часто поддерживают несколько конфигураций усложнений с разным количеством отображаемых усложнений. Чтобы упростить настройку, мы теперь поддерживаем изначально отключенные осложнения, вызывая setEnabled(false) в сборщике. Их можно включить позже с помощью ComplicationsUserStyleSetting.

Изменения API

  • ComplicationHelperActivity теперь принимает Collection<ComplicationType> , а не массив int, что упрощает его использование. ( I1f13d )
  • ProviderInfoRetriever.retrieveProviderInfo теперь правильно возвращает ListenableFuture<ProviderInfo[]> . ( Если2710 )
  • Теперь вы можете создать изначально отключенное усложнение, вызвав setEnabled(false) в сборщике. ( Идаа53 )
  • WatchFaceState теперь имеет свойство isHeadless, которое справедливо только для безголовых экземпляров. ( Ифа900 )
  • ComplicationDrawable теперь дополнительно поддерживает синхронную загрузку объектов рисования. Это используется API скриншотов. ( I34d4a )

Версия 1.0.0-альфа04

16 декабря 2020 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha04 . Версия 1.0.0-alpha04 содержит эти коммиты.

Новые возможности

  • Библиотека циферблатов Wear теперь поддерживает настройку границ для каждого типа. Например, вы можете переключиться на широкую ограничивающую рамку для ComplicationType.LONG_TEXT, используя при этом меньшую ограничивающую рамку для других типов.

Изменения API

  • Осложнения теперь используют ComplicationBounds, который обертывает Map<ComplicationType, RectF> для поддержки размеров каждого типа сложности. ( I1ebe7 )
  • RenderParameters теперь позволяет указать оттенок подсветки для использования в снимках экрана. ( Iff42b )
  • За исключением границ, теперь вам нужно использовать ComplicationsUserStyleSetting для изменения осложнений, это необходимо для обеспечения синхронизации ОС. ( I8dc5d )
  • Renderer теперь является запечатанным классом. Это означает, что CanvasRenderer и GlesRenderer теперь являются внутренними классами Renderer. ( Iab5d4 , б/173803230 )
  • CanvasComplicationDrawable.drawHighlight переименован в drawOutline. ObservableWatchData теперь имеет несколько отсутствующих аннотаций UiThread. ScreenState теперь полностью удален из WatchState. ( Если1393 )
  • Минимальный уровень API для Wear-Watchface теперь составляет 25. Обратите внимание, что для поддержки аппаратного холста требуется уровень API 26 или выше. ( Ic9bbd )
  • InteractiveWatchFaceWcsClient теперь имеет помощник getComplicationIdAt. ( I05811 )
  • Уровень API для клиента Wear-watchface-client был снижен до 25, однако для API снимков экрана требуется уровень API 27. ( Id31c2 ).

Исправления ошибок

  • Теперь мы раскрываем текущий ComplicationType ComplicationData в ComplicationState. ( I9b390 )
  • InteractiveWatchFaceWcs теперь имеет методbringAttentionToComplication, позволяющий кратко выделить указанное осложнение. ( I6d31c )
  • InteractiveWatchFaceWcsClient#setUserStyle теперь имеет перегрузку, принимающую Map что потенциально может избежать дополнительного обхода IPC, необходимого для создания UserStyle. ( I24eec )

Версия 1.0.0-альфа03

2 декабря 2020 г.

Выпущен androidx.wear:wear-*:1.0.0-alpha03 . Версия 1.0.0-alpha03 содержит эти коммиты.

Новые возможности

Класс Complication теперь имеет свойство compicationData, позволяющее циферблатам наблюдать за изменениями ComplicationData. Это дает возможность изменять размеры осложнения в зависимости от его типа.

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

Изменения API

  • BACKGROUND_IMAGE был переименован в PHOTO_IMAGE вместе со связанными классами. Этот тип сложности используется не только для фона, отсюда и изменение названия. ( I995c6 )
  • DefaultComplicationProviderPolicy правильно аннотирован с помощью IntDefs. ( I3b431 )
  • Скрытый класс TimeDependentText больше не отображается через ContentDescriptionLabel, вместо этого мы добавляем метод доступа для получения текста в указанное время. ( Ica692 )
  • Конструктор ObservableWatchData теперь является внутренним. ( I30121 , б/173802666 )
  • В Complication теперь есть данные compicationData, позволяющие циферблатам наблюдать за изменениями ComplicationData. Усложнение также имеет новый вызов isActiveAt, который можно использовать, чтобы определить, должно ли что-либо отображаться в указанное время и дату. ( Ic0e2a )
  • Пустой SharedMemoryImage больше не находится в общедоступном API. ( I7ee17 )
  • WatchFace.overridePreviewReferenceTimeMillis теперь имеет аннотацию IntRange, а методы получения и установки имеют согласованные имена. ( Ia5f78 )
  • Complication.Builder теперь для ясности создается с помощью Complication.createRoundRectComplicationBuilder или Complication.createBackgroundComplicationBuilder ( I54063 ).
  • Добавлен WatchFace.TapListener, который позволяет WatchFace отслеживать нажатия, не связанные с осложнениями. ( Ic2fe1 , б/172721168 )
  • WatchFace теперь поддерживает переменную частоту кадров, назначая Renderer.interactiveDrawModeUpdateDelayMillis . Это поможет продлить срок службы батареи, если вы будете спать без анимации. ( I707c9 )
  • WatchFace.Builder больше не нужен, а validate() и activeUpdateRateMillis были перенесены в Renderer. ( I329ea )
  • Для лучшей совместимости с Java переименованы геттеры для логических свойств в WatchState ( I6d2f1 ).
  • TapListener переименован в TapCallback, а InvalidateCallback в InvalidateListener для обеспечения единообразия. ( I9414e )
  • Параметры стиля циферблата Wear 2.0 для ясности были перенесены в отдельный класс. У установщиков WatchFace.Builder теперь есть симметричные геттеры классов WatchFace. ( Iefdfc )
  • Добавлен InteractiveWatchfaceWcsClient и WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient , который либо получает существующий экземпляр, либо создает его, как только служба Wallaper подключится и сделала двигатель. ( ID666E )
  • Watchfacecontrolclient теперь является интерфейсом, позволяющим испытаниях издеваться над ним. ( I875d9 )
  • HeadlessWatchfaceclient, InteractiveWatchFacesSuicLientImpl, InteractiveWatchfacewcsClient теперь интерфейсы, чтобы лучше облегчить тестирование. ( I7cdc3 )
  • Добавлены аннотации к методам в wear-watchface-complications-rendering ( I0D65C )

Исправления ошибок

  • Удалить форму экрана из DeviceConfig, который дублировал android.content.res.Configuration#isScreenRound() ( ifadf4 )
  • Измененная WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient , чтобы принять Map<String, String> вместо UserStyle , потому что трудно создать UserStyle , не зная схемы, которую вы можете получить только после того, как клиент создал. ( IEA02A )
  • Исправьте InteractiveWatchFaceWcsClient для использования ComplicationState вместо формата провода. ( ICB8A4 )
  • UserStyleSettings теперь является герметичным классом, потому что редакторы для часов понимают только встроенные классы. ( I2d797 )

Версия 1.0.0-альфа02

11 ноября 2020 г.

androidx.wear:wear-*:1.0.0-alpha02 выпускается. Версия 1.0.0-alpha02 содержит эти коммиты.

Изменения API

  • ComplicationDetails в настоящее время называется ComplicationState и правильно обернута, и использование носимой поддержки @ComplicationData.ComplicationType было перенесено на Androidx ComplicationType . ( I4dd36 )
  • Добавьте дополнительный параметр highlightedComplicationId в renderParameters, который позволяет запросить выделение одного осложнения на снимках экрана. ( I66ce9 )
  • ComplicationProviderService для использования API осложнений в стиле для последовательности ( ID5AEA )
  • getPreviewReferenceTimeMillis теперь получает время ссылки от DeviceConfig . ( I779fe )
  • Упрощающая поверхность API рендеринга может использовать SurfaceHolder.Callback для наблюдения за изменениями. ( I210db )
  • CanvasComplicationRenderer не распространяется от Renderer , переименовав его в ясность. ( Ibe880 )

Исправления ошибок

  • Первая версия androidx.wear:wear-watchface-client ( i1e35e )
  • Изменено имя GlesTextureComplication#renderer для ясности ( IB78F7 )
  • Переименовать StyleCategory в StyleSetting для ясности ( i488c7 )
  • Добавление UserStyleSchema для чистого API ( IF36F8 )

Версия 1.0.0-альфа01

28 октября 2020 г.

androidx.wear:wear-complications-*:1.0.0-alpha01 и androidx.wear:wear-watchface-*:1.0.0-alpha01 выпускаются. Версия 1.0.0-alpha01 содержит эти коммиты.

Изменения API

  • Удалили некоторые вещи, которые мы не собирались разоблачить в публичном API. ( I41669 )
  • Создание androidx.wear:wear-complications-provider . ( I77f1f )
  • Осложнения OuserStylecategory Новая рекомендуемая категория для настройки осложнений ( I96909 )
  • Добавить API-API-результат-износостой. ( I7c268 )
  • Функции с логическими возвращаемыми значениями, которые должны быть предварительно профиксированы с «IS», а не «GET» ( IF36FF )
  • Совет по API состоит в том, чтобы избежать использования защищенных, чтобы этот класс был рефактирован для принятия параметров через конструктор. ( I61644 )
  • Переименовать Betbackgroundcomplication для ясности. ( I96fe3 )
  • Используйте свойства Kotlin для осложнений, созданных Ishighlighted & Data ( i4dcc8 )
  • Вместо осложнений.
  • Эти API устанавливаются в носимых устройствах и удаляются здесь. ( IB425C )
  • Переименовали некоторые методы Watchface Builder, чтобы подчеркнуть их унаследованную природу Wear 2.0. ( IDB775 )
  • Первая бета-кандидат в API для износа/наблюдение за износой ( ID3981 )
  • Первая отслеживаемая версия API. ( IE9FE6 )
  • Правильно скрыть осложнение. ( I27f7a )
  • Добавление пропущенных аннотаций для методов осложнений ( i838fd )
  • Эта библиотека не имеет общедоступной поверхности API ( I88E2B )
  • Все классы вариантов категории в стиле теперь являются правильно окончательными. ( IB8323 )
  • Первая отслеживаемая версия API. ( I27c85 )

Исправления ошибок

  • Изменено усложнение ProviderService, чтобы иметь явный метод GetComplicationPreviewData. ( I4905f )
  • Проверка API Lint для пропущенного detgetmatchingbuilder включена для Androidx ( i4bbea , b/138602561 )
  • Переименовать износ-споры. ( IFEA02 )
  • Названия отображения категории стиля теперь являются CharbeSebences ( i28990 )
  • Замена переопределения наложением в соответствии с текущими темами и стилями, которые называют соглашениями об именах. ( I4fde9 )
  • Переименован userTyle#GetOptions для ясности. ( I695b6 )

Версия 1.2.0

Версия 1.2.0

15 сентября 2021 г.

androidx.wear:wear:1.2.0 выпускается. Версия 1.2.0 содержит эти коммиты.

Важные изменения с версии 1.1.0

  • Добавлены компонент CurvedText для легко написания кривообразного текста после кривизны самого большого круга, который можно ввести в представление. Пример использования:

    <androidx.wear.widget.CurvedText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="example curved text"
            app:anchorAngleDegrees="180"
            app:anchorPosition="center"
            app:clockwise="false"
            style="@android:style/TextAppearance.Large"
    />
    

    Пример изогнутого текста в износе Android

  • Добавлено контейнер Arclayout для изготовления своих дочерних элементов один на дугу в направлении по часовой стрелке или против часовой стрелки. Его дети могут быть стандартными виджетами Android или «изогнутыми» виджетами, которые реализуют интерфейс ArcLayout.Widget . ( I536da ) Пример использования:

    <androidx.wear.widget.ArcLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:anchorPosition="center">
          <ImageView
                  android:layout_width="20dp"
                  android:layout_height="20dp"
                  android:src="@drawable/ic_launcher"
          />
          <androidx.wear.widget.CurvedText
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:text="Curved Text"
                  style="@android:style/TextAppearance.Small"
                  android:padding="2dp"
           />
      </androidx.wear.widget.WearArcLayout>
    

    Пример текста арки в Android Wear

  • Добавлен новый контейнер для макета, увольнение, который обрабатывает обратно-кнопку и/или смахивать в диски, предназначенную для использования в рамках деятельности. По крайней мере, один слушатель должен быть добавлен, чтобы действовать в соответствии с действием увольнения. Слушатель обычно удаляет содержащий вид или фрагмент из текущей деятельности. SetSwipedismible (Boolean) и Bettbackbuttondismisbible (Boolean) предоставляются для прямого контроля над этими функциями. Этот новый макет предназначен для замены существующего Swipedismissframelayout.

  • Добавлена ​​поддержка для указания того, что деятельность может быть «автоматической резум», когда устройство покидает режим окружающей среды в классе AmbientModesupport. Эта функциональность была ранее доступна в устаревшем классе износостойкости от носимых устройств. ( I336ab )

  • Мигрировал класс WearableCalendarContract из библиотеки носимой поддержки. Этот API предоставляет подмножество данных, доступных через CalendarContract , но автоматически синхронизируется с носимыми устройствами. ( I6f2d7 )

  • Добавлен новый API WearTypeHelper в androidx.wear.utils для определения того, является ли заданное устройство для износа для Китая. ( IB01A9 )

  • Добавлены функции доступности в androidx.wear.widget.ConfirmationOverlay , который будет читать сообщения, если установлено, за которым следует описание анимации. ( I524dd )

  • Исправлена ​​ошибка, которая привела к подтверждению сбоя, если не было предоставлено никакого сообщения. ( IE6055 )

  • Исправлена ​​ошибка, в которой горизонтально прокручивая переработку заставил WearableDrawerLayout взглянуть на все взаимодействия. ( I24c7f )

Версия 1.2.0-rc01

1 сентября 2021 г.

androidx.wear:wear:1.2.0-rc01 выпускается без изменений с момента последней бета. Версия 1.2.0-rc01 содержит эти коммиты.

Версия 1.2.0-бета01

18 августа 2021 г.

androidx.wear:wear:1.2.0-beta01 выпускается. Версия 1.2.0-beta01 содержит эти коммиты.

Исправления ошибок

  • Исправьте ошибку, которая вызвала подтверждение сбоя, если не было предоставлено никакого сообщения. ( IE6055 )

Версия 1.2.0-Альфа13

4 августа 2021 г.

androidx.wear:wear:1.2.0-alpha13 выпускается. Версия 1.2.0-Alpha13 содержит эти коммиты.

Изменения API

  • Переименован WearTypeHelper.isChinaDevice в WearTypeHelper.isChinaBuild . ( I47302 )

Исправления ошибок

  • Мы добавили функции доступности в androidx.wear.widget.ConfirmationOverlay , который будет читать сообщения, если установлено, за которым следует описание анимации. ( I524dd )

Версия 1.2.0-альфа12

21 июля 2021 г.

androidx.wear:wear:1.2.0-alpha12 выпускается. Версия 1.2.0-alpha12 содержит эти коммиты.

Изменения API

  • Мы добавили новый API WearTypeHelper в androidx.wear.utils для определения того, является ли заданное устройство для износа для Китая. ( IB01A9 )

Версия 1.2.0-альфа11

30 июня 2021 г.

androidx.wear:wear:1.2.0-alpha11 выпускается. Версия 1.2.0-alpha11 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​ошибка, в которой горизонтально прокручивая переработку заставил WearableDrawerLayout взглянуть на все взаимодействия. ( I24c7f )

Версия 1.2.0-альфа10

2 июня 2021 г.

androidx.wear:wear:1.2.0-alpha10 выпускается. Версия 1.2.0-alpha10 содержит эти коммиты.

Новые возможности

  • Alpha10 улучшает поддержку доступности в изогнутом тексте и Arclayouts. Это также добавляет некоторое незначительное переименование в увольнении Framelayout, чтобы помочь прояснить API.

Изменения API

  • Мы переименовали следующие методы в DismissibleFrameLayout ( IB195E ):
    • Callback#onDismissed -> Callback#onDismissedFinished
    • isSwipeDismissible -> isDismissableBySwipe
    • isBackButtonDismissible -> isDismissableByBackButton
  • Мы сделали следующие методы окончательным ( IB195E ):
    • setBackButtonDismissible
    • setSwipeDismissible
    • registerCallback
    • unregisterCallback

Исправления ошибок

  • Используйте содержимое CustredTextView на Talkback. ( I05798 )
  • Лучшая доступность для обычных видов в Arclayout. ( I4418d )

Версия 1.2.0-альфа09

18 мая 2021 г.

androidx.wear:wear:1.2.0-alpha09 выпускается. Версия 1.2.0-alpha09 содержит эти коммиты.

Изменения API

  • Добавлена ​​новая функция CurvedTextView.setTypeface() (аналогично) TextView ), чтобы установить текстовый шрифт и стиль жирного шрифта/курсида. ( I4653c )
  • Переименовано в WearArcLayout в ArcLayout , WearCurvedText to CurvedText and WearArcLayout.ArcLayoutWidget to ArcLayout.Widget . ( I6e5ce )
    • На ArcLayout.Widget , переименован в getThicknessPx в getThickness .
    • Константы вертикального выравнивания на ArcLayout.LayoutParams теперь называются начиная с VERTICAL_ALIGN_ (вместо предыдущего VALIGN_ )
  • На CurvedTextView методы setMinSweepDegrees и setMaxSweepDegrees были заменены на setSweepRangeDegrees ( i7a9d9 )

Версия 1.2.0-альфа08

5 мая 2021 г.

androidx.wear:wear:1.2.0-alpha08 выпускается. Версия 1.2.0-alpha08 содержит эти коммиты.

Изменения API

  • Чтобы улучшить ясность кода, мы добавили аннотации @FloatRange к некоторым параметрам угла и типам возврата. ( I430dd )
  • В интерфейсе WearArcLayout.ArcLayoutWidget метод insideClickArea теперь называется ispointinsideclickarea. ( IA7307 )

Версия 1.2.0-альфа07

24 марта 2021 г.

androidx.wear:wear:1.2.0-alpha07 выпускается. Версия 1.2.0-alpha07 содержит эти коммиты.

Исправления ошибок

  • Установка ошибок с детьми без проклятия внутри WearClayout, вызванное использованием размера экрана с высотой, большей шириной. Эти не прорезированные дети теперь правильно размещены внутри дуги на всех типах экранов.

Версия 1.2.0-альфа06

27 января 2021 г.

androidx.wear:wear:1.2.0-alpha06 выпускается. Версия 1.2.0-alpha06 содержит эти коммиты.

Изменения API

  • Перенесите библиотеку «Текущие действия» в новую подбиблиотеку: «Износ продолжается». Классы теперь находятся в пакете androidx.wear.ongoing (ранее это был androidx.wear.ongoingactivities) ( I7c029 ).
  • Мигрируйте класс WearableCalendarContract от библиотеки носимой поддержки в Androidx. Этот API предоставляет подмножество данных, доступных через CalendarContract , но автоматически синхронизируется с носимыми устройствами. ( I6f2d7 )

Исправления ошибок

  • Отключить функцию отключения кнопки на спине по умолчанию в увольнении Framelayout, так как свисание до диски остается главным способом перемещения на полном экране на носимых устройствах ( IC24E3 )
  • Исправлена ​​некоторые проблемы, обрабатывающие видимость детей на WearClayout ( ICF912 )

Версия 1.2.0-альфа05

13 января 2021 г.

androidx.wear:wear:1.2.0-alpha05 выпускается. Версия 1.2.0-alpha05 содержит эти коммиты.

Исправления ошибок

  • Обновите Javadoc класса AmbientModeSupport, чтобы предоставить выборки, чтобы лучше продемонстрировать общее использование этого класса.

Версия 1.2.0-альфа04

16 декабря 2020 г.

androidx.wear:wear:1.2.0-alpha04 выпускается. Версия 1.2.0-alpha04 содержит эти коммиты.

Изменения API

  • Добавлена ​​поддержка для указания того, что деятельность может быть «автоматической резум», когда устройство покидает режим окружающей среды в классе AmbientModesupport. Эта функциональность была ранее доступна в устаревшем классе износостойкости от носимых устройств. ( I336ab )
  • Постоянный фактор
    • Категория теперь может быть установлена ​​при создании постоянной активности, например OngoingActivitiy.Builder.getCategory(String)
    • SpeargeActivityData теперь имеет временную метку, когда была построена постоянная активность - OngoingActivityData.getTimestamp()
    • ( I91cb4 )
  • Добавлена ​​поддержка для установления маржи для детей WararClayout путем изменения параметров макета на расширение marginlayoutparams, то есть wararclayout.layoutparams Extends android.view.viewgroup.marginlayoutparams. ( I2cd88 )
  • Изменить тип якоря WarucurvedTextView по умолчанию на WearArcLayout.ANCHOR_CENTER (был WearArcLayout.ANCHOR_START ). Это упрощает контракт между макетом дуги и изогнутым текстом, поскольку изогнутый текст по умолчанию рисует себя X-центрированным сверху, и макет родительской дуги может повернуть его туда, где он должен быть. ( I105ff )

Версия 1.2.0-альфа03

2 декабря 2020 г.

androidx.wear:wear:1.2.0-alpha03 выпускается. Версия 1.2.0-alpha03 содержит эти коммиты.

Новые возможности

Новый контейнер для макета увольняет Framelayout, который обрабатывает обратно-кнопку и/или свисание в диски, предназначенную для использования в рамках деятельности. По крайней мере, один слушатель должен быть добавлен, чтобы действовать в соответствии с действием увольнения. Слушатель обычно удаляет содержащий вид или фрагмент из текущей деятельности. SetSwipedismible (Boolean) и Bettbackbuttondismisbible (Boolean) предусмотрены для прямого контроля над этими функциями. Этот новый макет предназначен для замены существующего Swipedismissframelayout.

Изогнутые виджеты теперь обрабатывают сенсорные события. Нормальные виджеты внутри Awarclayout получат все события прикосновения, нанесенные на карту в их координатное пространство. WascurvedTextView (внутри итогая или нет) может установить обработчики OnClick и OnlongClick.

В настоящее время классы действий в настоящее время являются версионными Sparcelables вместо использования пользовательской сериализации/десериализации. Статический значок и намерения прикосновения теперь требуются.

Изменения API

  • Атрибут «SweepDegrees» для WarucurvedTextView разделен на Minsweepdegrees и Maxsweepdegrees, чтобы получить более гибкую планировку этого виджета.

Версия 1.2.0-альфа02

11 ноября 2020 г.

androidx.wear:wear:1.2.0-alpha02 выпускается. Версия 1.2.0-alpha02 содержит эти коммиты.

Этот релиз впервые добавляет новую «постоянную деятельность API». Этот API может быть использован разработчиками, чтобы сигнализировать о том, что давняя деятельность, такая как фитнес-упражнение или сеанс воспроизведения среды, продолжается. Это позволяет разработчикам предоставлять периодические обновления статуса, такие как «Расстояние и время запуска» или «текущая игра на треке» для отображения на лицевой стороне часов или в приложении. Эта функциональность нацелена на будущие устройства с включенной функцией активности.

Изменения API

  • Новый API для текущих действий, это неоперация на «неподдерживаемых устройствах». ( I69a31 )

Версия 1.2.0-альфа01

28 октября 2020 г.

androidx.wear:wear:1.2.0-alpha01 выпускается. Версия 1.2.0-alpha01 содержит эти коммиты.

Новые возможности

  • Добавлена ​​компонент итогровного текста для легко написания изогнутого текста после кривизны самого большого круга, который можно ввести в представление. Пример использования:
<androidx.wear.widget.WearCurvedTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="example curved text"
        app:anchorAngleDegrees="180"
        app:anchorPosition="center"
        app:clockwise="false"
        style="@android:style/TextAppearance.Large"
/>

Пример изогнутого текста в износе Android

  • Добавлено контейнер для идушки для выкладывания своих дочерних элементов один за другим на дуге в направлении по часовой стрелке или против часовой стрелки. Его дети могут быть стандартными виджетами Android или «изогнутыми» виджетами, которые реализуют свой интерфейс ArclayoutWidget. Пример использования:
<androidx.wear.widget.WearArcLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:anchorPosition="center">
      <ImageView
              android:layout_width="20dp"
              android:layout_height="20dp"
              android:src="@drawable/ic_launcher"
      />
      <androidx.wear.widget.WearCurvedTextView
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:text="Curved Text"
              style="@android:style/TextAppearance.Small"
              android:padding="2dp"
       />
  </androidx.wear.widget.WearArcLayout>

Пример текста арки в Android Wear

( I536da )

Изной вход 1.2

Версия 1.2.0-альфа02

29 сентября 2021 г.

androidx.wear:wear-input:1.2.0-alpha02 и androidx.wear:wear-input-testing:1.2.0-alpha02 . Версия 1.2.0-alpha02 содержит эти коммиты.

Изменения API

  • Переименован disallowEmoji для setEmojisAllowed в WearableRemoteInputExtender , чтобы использовать, будет ли показана опция для рисования эмодзи. ( I28393 )

Версия 1.2.0-альфа01

15 сентября 2021 г.

androidx.wear:wear-input:1.2.0-alpha01 и androidx.wear:wear-input-testing:1.2.0-alpha01 . Версия 1.2.0-alpha01 содержит эти коммиты.

Изменения API

  • Выставили все константы расположения кнопки от WearableButtons . ( IBB12C )
  • Добавлен класс WearableRemoteInputExtender , который можно использовать для добавления специфичных для износа дополнительных дополнительных данных в Android.App.RemoteInput. ( I01903 )

Изной вход 1.1.0

Версия 1.1.0

18 августа 2021 г.

androidx.wear:wear-input:1.1.0 и androidx.wear:wear-input-testing:1.1.0 выпускаются. Версия 1.1.0 содержит эти коммиты.

Важные изменения с версии 1.0.0

  • Добавлен RemoteInputIntentHelper .
    • Этот класс может быть использован для создания намерения удаленного момента. Затем это можно использовать для запроса ввода у ваших пользователей в настраиваемой деятельности.

Версия 1.1.0-rc01

4 августа 2021 г.

androidx.wear:wear-input:1.1.0-rc01 и androidx.wear:wear-input-testing:1.1.0-rc01 . Версия 1.1.0-rc01 содержит эти коммиты.

Нет API, с тех пор, как androidx.wear:wear-input:1.1.0-beta01 и androidx.wear:wear-input-testing:1.1.0-beta01

Версия 1.1.0-бета01

21 июля 2021 г.

androidx.wear:wear-input:1.1.0-beta01 и androidx.wear:wear-input-testing:1.1.0-beta01 выпускаются без изменений с 1.1.0-alpha03 . Версия 1.1.0-beta01 содержит эти коммиты.

Версия 1.1.0-альфа03

30 июня 2021 г.

androidx.wear:wear-input:1.1.0-alpha03 и androidx.wear:wear-input-testing:1.1.0-alpha03 . Версия 1.1.0-alpha03 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​ошибка, которая вызвала намерение удаленного удара, которая была добавлена ​​к им RemoteInput через RemoteInputHelper.putRemoteInputsExtra , будет отклонен.

Версия 1.1.0-альфа02

18 мая 2021 г.

androidx.wear:wear-input:1.1.0-alpha02 и androidx.wear:wear-input-testing:1.1.0-alpha02 . Версия 1.1.0-alpha02 содержит эти коммиты.

Изменения API

  • Методы RemoteInputIntentHelper , которые используются для получения или размещения дополнительных данных, которые представляют заголовок, отмену, подтверждение и в ходе маркировки, теперь используются CharSequence вместо String для этих меток. ( I0e71f )

Версия 1.1.0-альфа01

27 января 2021 г.

androidx.wear:wear-input:1.1.0-alpha01 и androidx.wear:wear-input-testing:1.1.0-alpha01 . Версия 1.1.0-alpha01 содержит эти коммиты.

Изменения API

  • Мигрируйте remoteInputIntent, от носимой библиотеки поддержки в Androidx. Мигрированный класс переименован в RemoteInputIntenthelper, который предоставляет вспомогательные функции для поддержки удаленных входов путем запуска намерения. ( I47cee )

Изной вход 1.0.0

Версия 1.0.0

2 декабря 2020 г.

androidx.wear:wear-input:1.0.0 и androidx.wear:wear-input-testing:1.0.0 выпускаются. Версия 1.0.0 содержит эти коммиты.

Этот релиз идентичен 1.0.0-rc01 .

Основные особенности версии 1.0.0

  • Миграция функциональности носимых носителей от носимой библиотеки поддержки до JetPack.

  • Добавлен androidx.wear.input.test.TestWearableButtonsProvider , который реализует androidx.wear.input.WearableButtonsProvider для помощи приложениям для тестирования, разработанных с помощью androidx.wear:wear-input .

Версия 1.0.0-rc01

11 ноября 2020 г.

androidx.wear:wear-input:1.0.0-rc01 и androidx.wear:wear-input-testing:1.0.0-rc01 . Версия 1.0.0-rc01 содержит эти коммиты.

Этот релиз идентичен 1.0.0-beta01 .

Версия 1.0.0-бета01

28 октября 2020 г.

androidx.wear:wear-input:1.0.0-beta01 и androidx.wear:wear-input-testing:1.0.0-beta01 выпускаются без изменений с 1.1.0-alpha01 . Версия 1.0.0-beta01 содержит эти коммиты.

Версия 1.0.0-Alpha01

14 октября 2020 г.

androidx.wear:wear-input-testing:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавлен androidx.wear.input.test.TestWearableButtonsProvider , который реализует androidx.wear.input.WearableButtonsProvider для помощи приложениям для тестирования, разработанных с помощью androidx.wear:wear-input . ( I0ed0c )

Версия износа 1.0.0-Alpha01

2 сентября 2020 года

androidx.wear:wear-input:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

Миграция функциональности носимых носителей от носимой библиотеки поддержки до JetPack. Дополнительная поддержка тестирования будет предоставлена ​​в androidx.wear:wear-input-testing в следующем выпуске JetPack.

Версия 1.1.0

Версия 1.1.0

14 октября 2020 г.

androidx.wear:wear:1.1.0 выпускается. Версия 1.1.0 содержит эти коммиты.

Основные изменения с 1.0.0

  • Добавлен атрибут Prefix layout_ в Boxedgedges (теперь layout_BoxedEdges ) для BoxInsetLayout , чтобы соответствовать соглашению о именовании Android. Это удалит ошибку Linter в Android Studio для этих атрибутов. ( I4272f )
  • Добавлена ​​дополнительная EXTRA_ANIMATION_DURATION_MILLIS к ConfirmationActivity , чтобы обеспечить продолжительность, которую отображается диалоговое окно подтверждения. ( ADB83CE , B/143356547 )
  • Обновленные WearableActionDrawView Чтобы задержать инфляцию ящика, пока ящик не будет открыт в первый раз. ( I01026 , B/163870541 )

Версия 1.1.0-rc03

2 сентября 2020 года

androidx.wear:wear:1.1.0-rc03 выпускается. Версия 1.1.0-rc03 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​проблема с ящиком действий, не показывающим контент при его открытии. ( I01026 , B/163870541 )

Версия 1.1.0-RC02

24 июня 2020 г.

androidx.wear:wear:1.1.0-rc02 выпускается. Версия 1.1.0-RC02 содержит эти коммиты.

Исправления ошибок

  • Добавлен атрибут Prefix layout_ в Boxedgedges (теперь layout_boxedEdges ) для BoxInsetLayout , чтобы соответствовать соглашению о именовании Android. Это удалит ошибку Linter в Android Studio для этих атрибутов.

Версия 1.1.0-rc01

14 мая 2020 года

androidx.wear:wear:1.1.0-rc01 выпускается без изменений с момента .1.0-beta01 . Версия 1.1.0-rc01 содержит эти коммиты.

Версия 1.1.0-бета01

29 апреля 2020 г.

androidx.wear:wear:1.1.0-beta01 выпускается без изменений, поскольку androidx.wear:wear:1.1.0-alpha01 . Версия 1.3.0-beta01 содержит эти коммиты.

Версия 1.1.0-альфа01

15 апреля 2020 года

androidx.wear:wear:1.1.0-alpha01 выпускается. Версия 1.1.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавлена ​​дополнительная EXTRA_ANIMATION_DURATION_MILLIS к ConfirmationActivity , чтобы обеспечить продолжительность, которую отображается диалоговое окно подтверждения. ( ADB83CE , 134523C , B/143356547 )

Исправления ошибок

  • Обновленные WearableActionDrawView Чтобы задержать инфляцию ящика, пока ящик не будет открыт в первый раз. ( 5CD32F7 )