Носить
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
( См. справочную документацию по всем пакетам износа )
В этой таблице перечислены все артефакты в группе androidx.wear
.
Артефакт | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
носить | 1.3.0 | - | - | 1.4.0-альфа02 |
износ-вход | 1.1.0 | 1.2.0-rc01 | - | - |
тестирование на износ | 1.1.0 | 1.2.0-rc01 | - | - |
продолжающийся износ | 1.0.0 | 1.1.0-rc01 | - | - |
взаимодействие с носимым телефоном | 1.1.0 | - | - | - |
носимые-дистанционные-взаимодействия | 1.1.0 | - | - | 1.2.0-альфа01 |
Объявление зависимостей
Чтобы добавить зависимость от 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.1.0" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.1.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.1.0") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.1.0") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Wear Core версии 1.0
Версия 1.0.0-beta01
30 июля 2025 г.
androidx.wear:wear-core:1.0.0-beta01
выпущен без каких-либо заметных изменений с момента последней альфа-версии. Версия 1.0.0-beta01 содержит следующие коммиты .
Версия 1.0.0-альфа02
16 июля 2025 г.
Выпущена androidx.wear:wear-core:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит следующие изменения .
Изменения API
- Обновление
WearApiVersionHelper
для включения VIC/Baklava ( I4676d )
Исправления ошибок
- Эта библиотека теперь использует аннотации JSpecify об отсутствии значений (nullness annotations) , которые являются аннотациями типа. Разработчикам Kotlin следует использовать следующие аргументы компилятора для обеспечения корректного использования:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
( Icbfb9 , b/326456246 ).
Версия 1.0.0-альфа01
29 мая 2024 г.
Выпущена androidx.wear:wear-core:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит следующие изменения .
Изменения API
- Добавлен новый класс
WearApiVersionhelper
для проверки совместимости API во время выполнения на Wear. Клиенты могут использовать этот статический вспомогательный класс и предоставленный метод (#isApiVersionAtLeast(VERSION)
) для проверки совместимости.
Предварительная версия Wear Tooling 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-beta01
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 ).
Версия Wear 1.4
Версия 1.4.0-альфа02
16 июля 2025 г.
Выпущена androidx.wear:wear:1.4.0-alpha02
. Версия 1.4.0-alpha02 содержит следующие изменения .
Исправления ошибок
- Эта библиотека теперь использует аннотации JSpecify об отсутствии значений (nullness annotations) , которые являются аннотациями типа. Разработчикам Kotlin следует использовать следующие аргументы компилятора для обеспечения корректного использования:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
( If4b1a , b/326456246 ).
Версия 1.4.0-альфа01
15 ноября 2023 г.
Выпущена androidx.wear:wear:1.4.0-alpha01
. Версия 1.4.0-alpha01 содержит следующие изменения.
Исправления ошибок
- Вертикально центрируйте значок
ConfirmationOverlay
, когда нет сообщений. ( I496d8 )
Версия Wear 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
обновлен для использования фонового отрисовываемого объекта вместо 2ndView
для исправления ошибок при использовании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-beta01
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 ) - Обновлена возможность значения NULL для
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
, добавив новые иконки и макет. ( If5b54 )
Исправления ошибок
- Добавлены правила ProGuard, гарантирующие сохранение кода, связанного с окружением ( Idaa10 ).
- Избегайте случайного удаления фрагментов в SwipeDismissFrameLayout с помощью вертикального перемещения ( Idb6d8 )
- Исправление ConfirmationOverlay при отсутствии сообщения ( I63e6f )
Внешний вклад
- Dae Gyu LEE (Samsung) — избегайте случайного удаления фрагментов в SwipeDismissFrameLayout с помощью вертикального перемещения ( Idb6d8 )
Версия 1.3.0-альфа01
29 сентября 2021 г.
Выпущена androidx.wear:wear:1.3.0-alpha01
. Версия 1.3.0-alpha01 содержит следующие изменения.
Исправления ошибок
-
ConfirmationOverlay
теперь сдвигает значок вверх, чтобы вместить более длинные сообщения, не допуская попадания сообщения на рамку устройства (или за пределы экрана). ( I54bff )
Wear-Remote-Interactions версии 1.2.0
Версия 1.2.0-альфа01
2 июля 2025 г.
Выпущена androidx.wear:wear-remote-interactions:1.2.0-alpha01
. Версия 1.2.0-alpha01 содержит следующие изменения .
Новые функции
- Обновлен
RemoteActivityHelper.startRemoteActivity
для использования нового публичного API Wear SDK (startRemoteActivity
), если он доступен (начиная с Wear 6). ( Id1e77 )
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-beta01
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
, который помогает проверить, доступна ли функция запуска удаленной активности. ( I107a9 )
Версия 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-beta01
24 июля 2024 г.
Выпущена androidx.wear:wear-remote-interactions:1.1.0-beta01
. Версия 1.1.0-beta01 содержит следующие изменения . Версия 1.3.0-beta01 Wear Remote Interactions означает, что эта версия библиотеки полностью функциональна, а 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
, который помогает проверить, доступна ли функция запуска удаленной активности. ( I107a9 ) - Мы обновили конструктор
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-Interactions Версия 1.1.0-alpha02
15 декабря 2021 г.
Выпущена androidx.wear:wear-phone-interactions:1.1.0-alpha02
. Версия 1.1.0-alpha02 содержит следующие изменения.
Исправления ошибок
- Исправлены ошибки в документации
RemoteAuthClient
, включая ошибку в примере кода и неработающую ссылку наErrorCode
( I260e8 ).
Wear-Phone-Interactions Версия 1.1.0-alpha01
15 сентября 2021 г.
Выпущена androidx.wear:wear-phone-interactions:1.1.0-alpha01
. Версия 1.1.0-alpha01 содержит следующие изменения.
Изменения API
Wear Ongoing & Interactions Версия 1.0.0
Wear-Phone-Interactions, версия 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-rc01
27 августа 2025 г.
androidx.wear:wear-ongoing:1.1.0-rc01
выпущен без изменений с момента последней бета-версии. Версия 1.1.0-rc01 содержит следующие коммиты .
Версия 1.1.0-beta01
30 июля 2025 г.
androidx.wear:wear-ongoing:1.1.0-beta01
выпущен без каких-либо заметных изменений с момента последней альфа-версии. Версия 1.1.0-beta01 содержит следующие коммиты .
Версия 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 , b/238790278 )
Wear-Ongoing Версия 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
соответственно. ( Id2042 )
Wear-Ongoing Версия 1.0.0-rc01
18 августа 2021 г.
androidx.wear:wear-ongoing:1.0.0-rc01
выпущен без изменений по сравнению с 1.0.0-beta01
. Версия 1.0.0-rc01 содержит следующие изменения.
Wear-Ongoing Версия 1.0.0-beta01
4 августа 2021 г.
Выпущена androidx.wear:wear-ongoing:1.0.0-beta01
. Версия 1.0.0-beta01 содержит следующие изменения.
Изменения API
- Некоторые сеттеры в OngoingActivity.Builder теперь принимают нулевой аргумент, чтобы обеспечить симметрию и согласованность сеттеров и геттеров ( I17ee5 ).
Wear-Phone-Interactions Версия 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-Interactions Версия 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-Interactions Версия 1.0.0-alpha05
30 июня 2021 г.
Выпущена androidx.wear:wear-phone-interactions:1.0.0-alpha05
. Версия 1.0.0-alpha05 содержит следующие изменения.
Исправления ошибок
- Документированные параметры, которые следует передавать в конструктор для
BridgingConfig.Builder
.
Wear-Ongoing Версия 1.0.0-alpha06
2 июня 2021 г.
Выпущена androidx.wear:wear-ongoing:1.0.0-alpha06
. Версия 1.0.0-alpha06 содержит следующие изменения.
Изменения API
- Добавить поле «Заголовок» в текущую активность. ( I7a405 )
Исправления ошибок
-
SerializationHelper.copy()
теперь выполняет защитное копирование информации ( I8b276 ) - Улучшена документация setCategory ( Iff01f )
Wear-Ongoing Версия 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
- Чтобы создать
Wear-Ongoing Версия 1.0.0-alpha04
5 мая 2021 г.
Выпущена androidx.wear:wear-ongoing:1.0.0-alpha04
. Версия 1.0.0-alpha04 содержит следующие изменения.
Изменения API
- В OngoingActivity методы fromExistingOngoingActivity теперь называются restoreOngoingActivity.
- 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-Interactions Версия 1.0.0-alpha04
7 апреля 2021 г.
Выпущена androidx.wear:wear-phone-interactions:1.0.0-alpha04
. Версия 1.0.0-alpha04 содержит следующие изменения.
Изменения API
- Обновлены константы
ErrorCode
для обеспечения обратной совместимости новой библиотеки с реализацией в Wearable Support Library.
Исправления ошибок
- Исправлено исключение, вызванное новым 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-Ongoing 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 Support Library в 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 теперь имеет статический метод для создания простых статусов с одной частью (текст или таймер), а также конструктор для создания более сложных статусов. ( I1fe81 )
- Переместить классы BridgingManager и BridgingConfig из библиотеки поддержки Wear в 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
Перенос библиотеки текущих действий в новую подбиблиотеку: wear-ongoing. Классы теперь находятся в пакете androidx.wear.ongoing (ранее androidx.wear.ongoingactivities) ( I7c029 ).
Создайте новую библиотеку поддержки, содержащую классы, обеспечивающие взаимодействие носимых устройств с телефонами. Изначально она заполнена классами, перенесёнными из библиотеки поддержки носимых устройств ( Id5180 ).
Перенести класс PhoneDeviceType из библиотеки Wearable Support Library в AndroidX. Перенесённый класс переименован в PhoneTypeHelper, который предоставляет вспомогательные методы для определения типа телефона, с которым сопряжены текущие часы. Предназначено только для носимых устройств. ( Ibd947 )
Создайте новую библиотеку поддержки, содержащую классы, обеспечивающие взаимодействие между носимыми устройствами и телефонами. Изначально она заполнена классами, перенесёнными из библиотеки поддержки носимых устройств ( I9deb4 ).
Перенесите класс WatchFaceCompanion из библиотеки поддержки носимых устройств в AndroidX. Перенесенный класс переименован в WatchFaceConfigIntentHelper, который предоставляет вспомогательные функции для указания идентификатора и имени компонента при настройке циферблата в приложении Companion на телефоне. Его также можно использовать локально для настройки циферблата на носимом устройстве. ( Ia455f )
Wear Complications и Watchface 1.0.0
Версия 1.0.0-альфа22
15 сентября 2021 г.
Выпущена androidx.wear:wear-*:1.0.0-alpha22
. Версия 1.0.0-alpha22 содержит следующие изменения.
Новые функции
- EditorSession теперь подписывается на наблюдателей жизненного цикла, поэтому вам больше не придется явно закрывать его при завершении активности.
Изменения API
- EditorSession и ListenableEditorSession теперь используют Kotlin StateFlows для 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 )
- На максимальный размер проводника схемы UserStyle наложены ограничения. Кроме того, значки в схеме не должны превышать размер 400x400 пикселей. ( I3b65b )
- Мы добавили класс MutableUserStyle для поддержки изменений экземпляров UserStyle ( I95a40 ).
- Мы переименовали
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
вListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
. ( I64ce2 ) - Мы изменили EditorState.previewComplicationsData так, чтобы он содержал только данные о включенных расширениях, и добавили
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
, который при передаче вrenderWatchFaceToBitmap
илиPreviewScreenshotParams
запрашивает рендеринг со временем предварительного просмотра циферблата по умолчанию. ( If7b3c ) - Мы удалили конструкторы 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
. Их обёртки guava также были переименованы. ( 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
. Если этот параметр не равен NULL, он используется для создания безголового экземпляра для поддержки 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 содержит эти коммиты.
Новые функции
In
GlesRenderer
,makeUiThreadContextCurrent
andmakeBackgroundThreadContextCurrent
have been replaced byrunUiThreadGlCommands
andrunBackgroundThreadGlCommands
which both accept aRunnable
. Библиотека гарантирует, что в любой момент времени выполняется только одна выполняемая команда GL.Чтобы упростить инициализацию UiThread, мы добавили
CanvasRenderer.uiThreadInit
, который вызывается один раз в UiThread перед любыми вызовами рендеринга. Мы также добавилиonRendererCreated
вCanvasComplication
, что упрощает обмен состоянием дляRenderer
иCanvasComplication
.Для ясности мы переименовали
Complication
вComplicationSlot
, аcomplicationId
— вcomplicationSlotId
илиcomplicationInstanceId
в зависимости от использования.
Изменения API
- Для ясности мы переименовали
Complication
вComplicationSlot
, аcomplicationId
— вcomplicationSlotId
илиcomplicationInstanceId
в зависимости от использования. Классы, использующие Complication, были аналогичным образом переименованы, например, 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
. ( Iaa103 ) -
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
now correctly returnsListenableFuture<ProviderInfo[]>
. ( Если2710 ) - You can now create an initially disabled complication by calling setEnabled(false) on the builder. ( Idaa53 )
- WatchFaceState now has an isHeadless property which is only true for headless instances. ( Ifa900 )
- ComplicationDrawable now optionally supports synchronous loading of drawables. This is used by the screenshot APIs. ( I34d4a )
Version 1.0.0-alpha04
16 декабря 2020 г.
androidx.wear:wear-*:1.0.0-alpha04
is released. Version 1.0.0-alpha04 contains these commits.
Новые функции
- The wear watch face library now supports setting bounds per type. Eg you can switch to a wide bounding box for ComplicationType.LONG_TEXT whilst using a smaller bounding box for other types.
Изменения API
- Complications now use ComplicationBounds which wraps a
Map<ComplicationType, RectF>
to support per complication type sizes. ( I1ebe7 ) - RenderParameters now lets you specify the highlight tint for use in screen shots. ( Iff42b )
- With the exception of bounds you now have to use ComplicationsUserStyleSetting to modify complications, this is to ensure the OS is kept in sync. ( I8dc5d )
- Renderer is now a sealed class. This means CanvasRenderer and GlesRenderer are now inner classes of Renderer. ( Iab5d4 , b/173803230 )
- CanvasComplicationDrawable.drawHighlight renamed to drawOutline. ObservableWatchData now has a few missing UiThread annotations. ScreenState has now been fully removed from WatchState. ( If1393 )
- The minimum API level for wear-watchface is now 25. Note hardware canvas support requires API level 26 or above. ( Ic9bbd )
- InteractiveWatchFaceWcsClient now has a getComplicationIdAt helper. ( I05811 )
- The API level for wear-watchface-client has been reduced to 25, however the screen shot APIs require API level 27. ( Id31c2 )
Исправления ошибок
- We now expose the complication's current ComplicationData's ComplicationType in ComplicationState. ( I9b390 )
- InteractiveWatchFaceWcs now has a method `bringAttentionToComplication to briefly highlight the specified complication. ( I6d31c )
-
InteractiveWatchFaceWcsClient#setUserStyle
now has an overload accepting Mapwhich can potentially avoid an extra IPC round trip necessary to construct UserStyle. ( I24eec )
Версия 1.0.0-альфа03
2 декабря 2020 г.
androidx.wear:wear-*:1.0.0-alpha03
is released. Version 1.0.0-alpha03 contains these commits.
Новые функции
The Complication class now has a compicationData property letting watch faces observe ComplicationData changes. This makes it possible to change the complication's dimensions based on the type of the complication.
Variable frame rates are now supported by assigning to Renderer.interactiveDrawModeUpdateDelayMillis. For watch faces which run short animations every second this can lead to good power savings by going to sleep when not animating.
Изменения API
-
BACKGROUND_IMAGE
has been renamed toPHOTO_IMAGE
along with related classes. This type of complication is not exclusively used for backgrounds hence the name change. ( I995c6 ) - DefaultComplicationProviderPolicy properly annotated with IntDefs. ( I3b431 )
- The hidden TimeDependentText class is no longer exposed via ContentDescriptionLabel, instead we add an accessor to get the text at a specified time. ( Ica692 )
- ObservableWatchData's constructor is now internal. ( I30121 , b/173802666 )
- Complication now has compicationData letting watch faces observe ComplicationData changes. Complication also has a new isActiveAt call which can be used to tell if anything should be rendered at the provided datetime. ( Ic0e2a )
- The empty
SharedMemoryImage
is no longer in the public API. ( I7ee17 ) -
WatchFace.overridePreviewReferenceTimeMillis
now has an IntRange annotation and the getter and setter have consistent names. ( Ia5f78 ) -
Complication.Builder
is now created viaComplication.createRoundRectComplicationBuilder
orComplication.createBackgroundComplicationBuilder
for clarity ( I54063 ) - Added WatchFace.TapListener which allows taps not consumed by complications to be observed by the WatchFace. ( Ic2fe1 , b/172721168 )
- WatchFace now supports variable frame rates by assigning to
Renderer.interactiveDrawModeUpdateDelayMillis
. This can help preserve battery life by sleeping when not animating. ( I707c9 ) - WatchFace.Builder is no longer needed and invalidate() and interactiveUpdateRateMillis have been moved to Renderer. ( I329ea )
- For better java interoperability renamed getters for boolean properties in WatchState ( I6d2f1 )
- Renamed TapListener to TapCallback and InvalidateCallback to InvalidateListener for consistency. ( I9414e )
- Wear 2.0 watchface style options have been moved to their own class for clarity. WatchFace.Builder setters now have symmetrical WatchFace class getters. ( Iefdfc )
- Added InteractiveWatchFaceWcsClient and
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
which either gets an existing instance or creates it once the wallaper service has connected and made the engine. ( Id666e ) - WatchFaceControlClient is now an interface to allow tests to mock it. ( I875d9 )
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl, InteractiveWatchFaceWcsClient are now interfaces to better facilitate testing. ( I7cdc3 )
- Added annotations to methods in
wear-watchface-complications-rendering
( I0d65c )
Исправления ошибок
- Remove screen shape from DeviceConfig, which was duplicating
android.content.res.Configuration#isScreenRound()
( Ifadf4 ) - Changed
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
to accept aMap<String, String>
instead ofUserStyle
because it's hard to create aUserStyle
without knowing the schema which you can only get after the client has been created. ( Iea02a ) - Fix
InteractiveWatchFaceWcsClient
to useComplicationState
instead of the wire format. ( Icb8a4 ) -
UserStyleSettings
is now a sealed class because the watch face editors only understand the built in classes. ( I2d797 )
Версия 1.0.0-альфа02
11 ноября 2020 г.
androidx.wear:wear-*:1.0.0-alpha02
is released. Version 1.0.0-alpha02 contains these commits.
Изменения API
-
ComplicationDetails
is now calledComplicationState
and is properly wrapped and usages of wearable support@ComplicationData.ComplicationType
have been migrated to androidxComplicationType
. ( I4dd36 ) - Add an optional
highlightedComplicationId
parameter to RenderParameters which allows you to request highlighting of a single complication in screenshots. ( I66ce9 ) -
ComplicationProviderService
to use new style complication api for consistency ( Id5aea ) -
getPreviewReferenceTimeMillis
now gets reference times fromDeviceConfig
. ( I779fe ) - Simplifying Renderer API surface, can use
SurfaceHolder.Callback
to observe changes instead. ( I210db ) -
CanvasComplicationRenderer
doesn't extend fromRenderer
, renaming it for clarity. ( Ibe880 )
Исправления ошибок
- First version of
androidx.wear:wear-watchface-client
( I1e35e ) - Changed the name of
GlesTextureComplication#renderer
for clarity ( Ib78f7 ) - Rename
StyleCategory
toStyleSetting
for clarity ( I488c7 ) - Adding
UserStyleSchema
for a cleaner API ( If36f8 )
Версия 1.0.0-альфа01
28 октября 2020 г.
androidx.wear:wear-complications-*:1.0.0-alpha01
and androidx.wear:wear-watchface-*:1.0.0-alpha01
are released. Version 1.0.0-alpha01 contains these commits.
Изменения API
- Removed some things we didn't intend to expose in public api. ( I41669 )
- Create
androidx.wear:wear-complications-provider
library. ( I77f1f ) - ComplicationsUserStyleCategory the new recommended category for configuring complications ( I96909 )
- Add wear-complication-data API. ( I7c268 )
- Functions with boolean return values to be prefixed with “is” rather than “get” ( If36ff )
- API advice is to avoid using protected so this class has been refactored to take parameters in via the constructor. ( I61644 )
- Rename setBackgroundComplication for clarity. ( I96fe3 )
- Use Kotlin properties for ComplicationDrawable isHighlighted & data ( I4dcc8 )
- Instead of ComplicationRenderer.InvalidateCallback we add Complication#invalidate() ( I4f4c6 )
- These APIs are being deprecated in WearableSupport and are removed here. ( Ib425c )
- Renamed some WatchFace builder methods to emphasize their wear 2.0 legacy nature. ( Idb775 )
- First beta API candidate for wear/wear-watchface ( Id3981 )
- First tracked version of the API. ( Ie9fe6 )
- Properly hiding ComplicationDrawable.BorderStyle IntDef and move to ComplicationStyle for consistency. ( I27f7a )
- Adding missing annotations for ComplicationStyle methods ( I838fd )
- This library has no public API surface ( I88e2b )
- All style category Option classes are now properly final. ( Ib8323 )
- First tracked version of the API. ( I27c85 )
Исправления ошибок
- Changed ComplicationProviderService to have an explicit getComplicationPreviewData method. ( I4905f )
- API lint check for MissingGetterMatchingBuilder is enabled for androidx ( I4bbea , b/138602561 )
- Rename wear-complications-rendering. ( Ifea02 )
- Style category display names are now CharSequences ( I28990 )
- Replacing Override with Overlay to match current themes & styles naming conventions. ( I4fde9 )
- Renamed UserStyle#getOptions for clarity. ( I695b6 )
Версия 1.2.0
Версия 1.2.0
15 сентября 2021 г.
androidx.wear:wear:1.2.0
is released. Version 1.2.0 contains these commits.
Important changes since 1.1.0
Added CurvedText component for easily writing curved text following the curvature of the largest circle that can be inscribed in the view. An usage example:
<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" />
Added ArcLayout container for laying out its child elements one by one on an arc in either the clockwise or counterclockwise direction. Its children can be both standard android widget or "curved" widgets which implement the
ArcLayout.Widget
interface. ( I536da ) An usage example:<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>
Added a new layout container, DismissibleFrameLayout, which handles back-button-dismiss and/or swipe-to-dismiss, intended for use within an activity. At least one listener must be added to act on a dismissal action. A listener will typically remove a containing view or a fragment from the current activity. setSwipeDismissible(boolean) & setBackButtonDismissible(boolean) are provided for direct control over the features. This new layout is meant to replace the existing SwipeDismissFrameLayout.
Added support for indicating that an Activity can be “auto-resumed” when the device leaves ambient mode in the AmbientModeSupport class. This functionality was previously available in the deprecated WearableActivity class from WearableSupportLibrary. ( I336ab )
Migrated WearableCalendarContract class from Wearable Support Library. This API provides a subset of the data available through CalendarContract , but is automatically synced to wearable devices. ( I6f2d7 )
Added a new API
WearTypeHelper
inandroidx.wear.utils
for determining whether the given wear device is for China. ( Ib01a9 )Added accessibility features to
androidx.wear.widget.ConfirmationOverlay
that will read out messages if set followed by animation description. ( I524dd )Fixed bug that caused ConfirmationActivity to crash if no message was provided. ( Ie6055 )
Fixed bug where horizontally scrolling RecyclerViews caused
WearableDrawerLayout
to peek on all interactions. ( I24c7f )
Version 1.2.0-rc01
1 сентября 2021 г.
androidx.wear:wear:1.2.0-rc01
is released with no changes since the last beta. Version 1.2.0-rc01 contains these commits.
Version 1.2.0-beta01
18 августа 2021 г.
androidx.wear:wear:1.2.0-beta01
is released. Version 1.2.0-beta01 contains these commits.
Исправления ошибок
- Fix bug that caused ConfirmationActivity to crash if no message was provided. ( Ie6055 )
Version 1.2.0-alpha13
4 августа 2021 г.
androidx.wear:wear:1.2.0-alpha13
is released. Version 1.2.0-alpha13 contains these commits.
Изменения API
- Renamed
WearTypeHelper.isChinaDevice
toWearTypeHelper.isChinaBuild
. ( I47302 )
Исправления ошибок
- We have added accessibility features to
androidx.wear.widget.ConfirmationOverlay
that will read out messages if set followed by animation description. ( I524dd )
Version 1.2.0-alpha12
21 июля 2021 г.
androidx.wear:wear:1.2.0-alpha12
is released. Version 1.2.0-alpha12 contains these commits.
Изменения API
- We have added a new API
WearTypeHelper
inandroidx.wear.utils
for determining whether the given wear device is for China. ( Ib01a9 )
Version 1.2.0-alpha11
30 июня 2021 г.
androidx.wear:wear:1.2.0-alpha11
is released. Version 1.2.0-alpha11 contains these commits.
Исправления ошибок
- Fixed bug where horizontally scrolling RecyclerViews caused
WearableDrawerLayout
to peek on all interactions. ( I24c7f )
Version 1.2.0-alpha10
2 июня 2021 г.
androidx.wear:wear:1.2.0-alpha10
is released. Version 1.2.0-alpha10 contains these commits.
Новые функции
- Alpha10 improves accessibility support in Curved Text and ArcLayouts. It also add some minor renaming of in the DismissibleFrameLayout to help clarify the API.
Изменения API
- We have renamed following methods in
DismissibleFrameLayout
( Ib195e ):-
Callback#onDismissed
->Callback#onDismissedFinished
-
isSwipeDismissible
->isDismissableBySwipe
-
isBackButtonDismissible
->isDismissableByBackButton
-
- We have made following methods final ( Ib195e ):
-
setBackButtonDismissible
-
setSwipeDismissible
-
registerCallback
-
unregisterCallback
-
Исправления ошибок
- Use the content of the CurvedTextView on Talkback. ( I05798 )
- Better accessibility for normal views in an ArcLayout. ( I4418d )
Version 1.2.0-alpha09
18 мая 2021 г.
androidx.wear:wear:1.2.0-alpha09
is released. Version 1.2.0-alpha09 contains these commits.
Изменения API
- Added a new function
CurvedTextView.setTypeface()
(similar toTextView
's), to set the text typeface and bold/italics style. ( I4653c ) - Renamed
WearArcLayout
toArcLayout
,WearCurvedText
toCurvedText
andWearArcLayout.ArcLayoutWidget
toArcLayout.Widget
. ( I6e5ce )- On
ArcLayout.Widget
, renamedgetThicknessPx
intogetThickness
. - Vertical alignment constants on
ArcLayout.LayoutParams
are now named starting withVERTICAL_ALIGN_
(instead of the previousVALIGN_
)
- On
- On
CurvedTextView
, the methodssetMinSweepDegrees
andsetMaxSweepDegrees
were replaced bysetSweepRangeDegrees
( I7a9d9 )
Version 1.2.0-alpha08
5 мая 2021 г.
androidx.wear:wear:1.2.0-alpha08
is released. Version 1.2.0-alpha08 contains these commits.
Изменения API
- To improve code clarity, we added
@FloatRange
annotations to some angle parameters and return types. ( I430dd ) - In the interface
WearArcLayout.ArcLayoutWidget
, the methodinsideClickArea
is now called isPointInsideClickArea. ( Ia7307 )
Version 1.2.0-alpha07
24 марта 2021 г.
androidx.wear:wear:1.2.0-alpha07
is released. Version 1.2.0-alpha07 contains these commits.
Исправления ошибок
- Fixing errors with non-curved children inside of WearArcLayout caused by using screen size with height bigger than width. These non-curved children are now correctly placed inside of an arc on all screen types.
Version 1.2.0-alpha06
27 января 2021 г.
androidx.wear:wear:1.2.0-alpha06
is released. Version 1.2.0-alpha06 contains these commits.
Изменения API
- Migrate the Ongoing Activities library to a new sub-library: wear-ongoing. Classes now live in the androidx.wear.ongoing package (previously was androidx.wear.ongoingactivities) ( I7c029 )
- Migrate WearableCalendarContract class from Wearable Support Library to AndroidX. This API provides a subset of the data available through CalendarContract , but is automatically synced to wearable devices. ( I6f2d7 )
Исправления ошибок
- Disable the back button dismiss feature by default in Dismissible FrameLayout since swipe-to-dismiss remains as the main way to navigate back a full screen on Wearable devices ( Ic24e3 )
- Fixed some issues handling children visibility on WearArcLayout ( Icf912 )
Version 1.2.0-alpha05
13 января 2021 г.
androidx.wear:wear:1.2.0-alpha05
is released. Version 1.2.0-alpha05 contains these commits.
Исправления ошибок
- Update the javadoc of AmbientModeSupport class to provide sample snippets to better demonstrate the general use of this class.
Version 1.2.0-alpha04
16 декабря 2020 г.
androidx.wear:wear:1.2.0-alpha04
is released. Version 1.2.0-alpha04 contains these commits.
Изменения API
- Added support for indicating that an Activity can be “auto-resumed” when the device leaves ambient mode in the AmbientModeSupport class. This functionality was previously available in the deprecated WearableActivity class from WearableSupportLibrary. ( I336ab )
- OngoingActivity
- Category can now be set when creating an OngoingActivity, eg
OngoingActivitiy.Builder.getCategory(String)
- OngoingActivityData now has a timestamp of when the OngoingActivity was built -
OngoingActivityData.getTimestamp()
- ( I91cb4 )
- Category can now be set when creating an OngoingActivity, eg
- Added support for setting margins on children of WearArcLayout by changing the layout params to extend MarginLayoutParams, ie WearArcLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams. ( I2cd88 )
- Change WearCurvedTextView's anchor type default to
WearArcLayout.ANCHOR_CENTER
(wasWearArcLayout.ANCHOR_START
). This simplifies the contract between the arc layout and the curved text as the curved text by default draws itself x-centered at the top, and the parent arc layout can rotate it to where it needs to be. ( I105ff )
Version 1.2.0-alpha03
2 декабря 2020 г.
androidx.wear:wear:1.2.0-alpha03
is released. Version 1.2.0-alpha03 contains these commits.
Новые функции
A new layout container DismissibleFrameLayout, which handles back-button-dismiss and/or swipe-to-dismiss, intended for use within an activity. At least one listener must be added to act on a dismissal action. A listener will typically remove a containing view or a fragment from the current activity. setSwipeDismissible(boolean) & setBackButtonDismissible(boolean) are provided for direct control over the features. This new layout is meant to replace the existing SwipeDismissFrameLayout.
Curved widgets now handle touch events. Normal widgets inside an WearArcLayout will receive all touch events, mapped to their coordinate space. WearCurvedTextView (inside an WearArcLayout or not) can set onClick and onLongClick handlers.
Ongoing activities classes are now VersionedParcelables instead of using custom serialization/deserialization. The static icon and touch intent are now required.
Изменения API
- The attribute "sweepDegrees" for WearCurvedTextView is separated into minSweepDegrees and maxSweepDegrees to give a more flexible layout of this widget.
Version 1.2.0-alpha02
11 ноября 2020 г.
androidx.wear:wear:1.2.0-alpha02
is released. Version 1.2.0-alpha02 contains these commits.
This release adds a new “Ongoing Activities API” for the first time. This API can be used by developers to signal that a long running activity, such as a fitness exercise or a media playback session is on-going. It allows developers to provide periodic status updates such as “distance and time run” or “current track playing” for display on the watch face or in the app launcher. This functionality is targeted at future devices with the on-going activity functionality enabled.
Изменения API
- New API for Ongoing Activities, this is a no-op on "unsupported devices.". ( I69a31 )
Version 1.2.0-alpha01
28 октября 2020 г.
androidx.wear:wear:1.2.0-alpha01
is released. Version 1.2.0-alpha01 contains these commits.
Новые функции
- Added WearCurvedTextView component for easily writing curved text following the curvature of the largest circle that can be inscribed in the view. An usage example:
<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"
/>
- Added WearArcLayout container for laying out its child elements one by one on an arc in either the clockwise or counterclockwise direction. Its children can be both standard android widget or "curved" widgets which implement its ArcLayoutWidget interface. An usage example:
<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>
( I536da )
Wear-Input 1.2
Version 1.2.0-rc01
27 августа 2025 г.
androidx.wear:wear-input:1.2.0-rc01
and androidx.wear:wear-input-testing:1.2.0-rc01
are released with no changes since the last beta. Version 1.2.0-rc01 contains these commits .
Version 1.2.0-beta01
30 июля 2025 г.
androidx.wear:wear-input:1.2.0-beta01
and androidx.wear:wear-input-testing:1.2.0-beta01
are released with no notable changes since the last alphas. Version 1.2.0-beta01 contains these commits .
Version 1.2.0-alpha04
16 июля 2025 г.
androidx.wear:wear-input:1.2.0-alpha04
and androidx.wear:wear-input-testing:1.2.0-alpha04
are released. Version 1.2.0-alpha04 contains these commits .
Новые функции
- Account for screen rotation when calculating the location of physical buttons relative to the screen. ( 87a57e )
Изменения API
- Rename LOC * to LOCATION * in wear-input. ( I5e879 )
Исправления ошибок
- This library now uses JSpecify nullness annotations , which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
( Icbfb9 , b/326456246 )
Version 1.2.0-alpha02
29 сентября 2021 г.
androidx.wear:wear-input:1.2.0-alpha02
and androidx.wear:wear-input-testing:1.2.0-alpha02
are released. Version 1.2.0-alpha02 contains these commits.
Изменения API
- Renamed
disallowEmoji
tosetEmojisAllowed
inWearableRemoteInputExtender
to use to set whether the option to draw emojis will be shown. ( I28393 )
Version 1.2.0-alpha01
15 сентября 2021 г.
androidx.wear:wear-input:1.2.0-alpha01
and androidx.wear:wear-input-testing:1.2.0-alpha01
are released. Version 1.2.0-alpha01 contains these commits.
Изменения API
- Exposed all button location constants from
WearableButtons
. ( Ibb12c ) - Added
WearableRemoteInputExtender
class that can be used for adding Wear-specific extras to the android.app.RemoteInput. ( I01903 )
Wear-Input 1.1.0
Версия 1.1.0
18 августа 2021 г.
androidx.wear:wear-input:1.1.0
and androidx.wear:wear-input-testing:1.1.0
are released. Version 1.1.0 contains these commits.
Important changes since 1.0.0
- Added
RemoteInputIntentHelper
.- This class can be used to build a RemoteInput Intent. This can then be used to request input from your users in a customisable activity.
Version 1.1.0-rc01
4 августа 2021 г.
androidx.wear:wear-input:1.1.0-rc01
and androidx.wear:wear-input-testing:1.1.0-rc01
are released. Version 1.1.0-rc01 contains these commits.
No API Changes since androidx.wear:wear-input:1.1.0-beta01
and androidx.wear:wear-input-testing:1.1.0-beta01
Version 1.1.0-beta01
21 июля 2021 г.
androidx.wear:wear-input:1.1.0-beta01
and androidx.wear:wear-input-testing:1.1.0-beta01
are released with no changes since 1.1.0-alpha03
. Version 1.1.0-beta01 contains these commits.
Version 1.1.0-alpha03
30 июня 2021 г.
androidx.wear:wear-input:1.1.0-alpha03
and androidx.wear:wear-input-testing:1.1.0-alpha03
are released. Version 1.1.0-alpha03 contains these commits.
Исправления ошибок
- Fixed bug which caused RemoteInput intents, which had
RemoteInput
s added to them viaRemoteInputHelper.putRemoteInputsExtra
, to be rejected.
Version 1.1.0-alpha02
18 мая 2021 г.
androidx.wear:wear-input:1.1.0-alpha02
and androidx.wear:wear-input-testing:1.1.0-alpha02
are released. Version 1.1.0-alpha02 contains these commits.
Изменения API
-
RemoteInputIntentHelper
's methods that are used for getting or putting extras that represent title, cancel, confirm, and in progress labels are now usingCharSequence
instead ofString
for these labels. ( I0e71f )
Version 1.1.0-alpha01
27 января 2021 г.
androidx.wear:wear-input:1.1.0-alpha01
and androidx.wear:wear-input-testing:1.1.0-alpha01
are released. Version 1.1.0-alpha01 contains these commits.
Изменения API
- Migrate RemoteInputIntent class from Wearable Support Library to AndroidX. The migrated class is renamed as RemoteInputIntentHelper which provides helper functions for supporting remote inputs through starting an intent. ( I47cee )
Wear-Input 1.0.0
Версия 1.0.0
2 декабря 2020 г.
androidx.wear:wear-input:1.0.0
and androidx.wear:wear-input-testing:1.0.0
are released. Version 1.0.0 contains these commits.
This release is identical to 1.0.0-rc01
.
Major features of 1.0.0
Migration of WearableButtons functionality from Wearable Support Library to Jetpack.
Added
androidx.wear.input.test.TestWearableButtonsProvider
which implementsandroidx.wear.input.WearableButtonsProvider
to aid testing applications developed withandroidx.wear:wear-input
library.
Version 1.0.0-rc01
11 ноября 2020 г.
androidx.wear:wear-input:1.0.0-rc01
and androidx.wear:wear-input-testing:1.0.0-rc01
are released. Version 1.0.0-rc01 contains these commits.
This release is identical to 1.0.0-beta01
.
Version 1.0.0-beta01
28 октября 2020 г.
androidx.wear:wear-input:1.0.0-beta01
and androidx.wear:wear-input-testing:1.0.0-beta01
are released with no changes since 1.1.0-alpha01
. Version 1.0.0-beta01 contains these commits.
Wear-Input-Testing Version 1.0.0-alpha01
14 октября 2020 г.
androidx.wear:wear-input-testing:1.0.0-alpha01
is released. Version 1.0.0-alpha01 contains these commits.
Изменения API
- Added
androidx.wear.input.test.TestWearableButtonsProvider
which implementsandroidx.wear.input.WearableButtonsProvider
to aid testing applications developed withandroidx.wear:wear-input
library. ( I0ed0c )
Wear-Input Version 1.0.0-alpha01
2 сентября 2020 г.
androidx.wear:wear-input:1.0.0-alpha01
is released. Version 1.0.0-alpha01 contains these commits.
Новые функции
Migration of WearableButtons functionality from Wearable Support Library to Jetpack. Additional testing support will be provided in androidx.wear:wear-input-testing
library in the next Jetpack release.
Версия 1.1.0
Версия 1.1.0
14 октября 2020 г.
androidx.wear:wear:1.1.0
is released. Version 1.1.0 contains these commits.
Major changes since 1.0.0
- Added a
layout_
prefix to boxedEdges attribute (nowlayout_BoxedEdges
) forBoxInsetLayout
in order to comply with android naming convention. This will remove the linter error in Android Studio for these attributes. ( I4272f ) - Added optional
EXTRA_ANIMATION_DURATION_MILLIS
toConfirmationActivity
to allow for the duration that the confirmation dialog is displayed. ( adb83ce , b/143356547 ) - Updated
WearableActionDrawView
to delay action drawer inflation until the drawer is opened for the first time. ( I01026 , b/163870541 )
Version 1.1.0-rc03
2 сентября 2020 г.
androidx.wear:wear:1.1.0-rc03
is released. Version 1.1.0-rc03 contains these commits.
Исправления ошибок
- Fixed issue with Action Drawer not showing content when it is opened. ( I01026 , b/163870541 )
Version 1.1.0-rc02
24 июня 2020 г.
androidx.wear:wear:1.1.0-rc02
is released. Version 1.1.0-rc02 contains these commits.
Исправления ошибок
- Added a
layout_
prefix to boxedEdges attribute (nowlayout_boxedEdges
) forBoxInsetLayout
in order to comply with android naming convention. This will remove the linter error in Android Studio for these attributes.
Version 1.1.0-rc01
14 мая 2020 г.
androidx.wear:wear:1.1.0-rc01
is released with no changes since .1.0-beta01
. Version 1.1.0-rc01 contains these commits.
Version 1.1.0-beta01
29 апреля 2020 г.
androidx.wear:wear:1.1.0-beta01
is released with no changes since androidx.wear:wear:1.1.0-alpha01
. Version 1.3.0-beta01 contains these commits.
Version 1.1.0-alpha01
15 апреля 2020 г.
androidx.wear:wear:1.1.0-alpha01
is released. Version 1.1.0-alpha01 contains these commits.
Изменения API
- Added optional
EXTRA_ANIMATION_DURATION_MILLIS
toConfirmationActivity
to allow for the duration that the confirmation dialog is displayed. ( adb83ce , 134523c , b/143356547 )
Исправления ошибок
- Updated
WearableActionDrawView
to delay action drawer inflation until the drawer is opened for the first time. ( 5cd32f7 )