Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(Zobacz dokumentację referencyjną wszystkich pakietów Wear)
Ta tabela zawiera listę wszystkich artefaktów w grupie androidx.wear.
| Artefakt | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| noszenie, | 1.4.0 | - | - | - |
| wear-input | 1.2.0 | - | - | - |
| wear-input-testing | 1.2.0 | - | - | - |
| wear-ongoing | 1.1.0 | - | - | - |
| interakcje z telefonem na zegarku | 1.1.1 | - | - | - |
| wear-remote-interactions | 1.2.0 | - | 1.3.0-beta01 | - |
Deklarowanie zależności
Aby dodać zależność od Wear, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.wear:wear:1.4.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.2.0" implementation "androidx.wear:wear-input-testing:1.2.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.1.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.1.1" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.2.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.4.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.2.0") implementation("androidx.wear:wear-input-testing:1.2.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.1.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.1.1") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.2.0") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Prześlij opinię
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz oddać głos na istniejący problem, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wear-Core
Wersja 1.2
Wersja 1.2.0-alpha01
23 września 2026 r.
Publikacja androidx.wear:wear-core:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy stałe
WEAR_CINNAMON_BUN_1iWEAR_CINNAMON_BUN_2dla nowych wersji Wear OS doWearApiVersionHelper. (Ifec88)
Wersja 1.1
Wersja 1.1.0
3 czerwca 2026 r.
Publikacja androidx.wear:wear-core:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Główne funkcje wersji 1.1.0:
* Dodano CINNAMON_BUN w WearApiVersionHelper na potrzeby sprawdzania zgodności interfejsu API z pakietem SDK 37.
Wersja 1.1.0-rc01
19 maja 2026 r.
androidx.wear:wear-core:1.1.0-rc01 – bez zmian w porównaniu z poprzednią wersją. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
6 maja 2026 r.
Publikacja androidx.wear:wear-core:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
CINNAMON_BUNwWearApiVersionHelperna potrzeby sprawdzania zgodności interfejsu API z pakietem SDK 37.
Wersja 1.1.0-alpha02
8 kwietnia 2026 r.
Publikacja androidx.wear:wear-core:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.
Nowe funkcje
- Dodaj nowe
VersionCodesdlaWearApiVersionHelper(I86bc1, b/487264133)
Wersja 1.1.0-alpha-01
25 marca 2026 r.
Publikacja androidx.wear:wear-core:1.1.0-alpha-01 Wersja 1.1.0-alpha-01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
CINNAMON_BUN(SDK 37) wWearApiVersionHelper. (Id1ee0, b/487264133)
Wersja 1.0
Wersja 1.0.0
17 grudnia 2025 r.
Publikacja androidx.wear:wear-core:1.0.0 Wersja 1.0.0 zawiera te zmiany.
Najważniejsze funkcje wersji 1.0.0:
- Dodano
WearApiVersionHelper, aby ułatwić sprawdzanie zgodności interfejsu API środowiska wykonawczego na urządzeniach z Wear. Klienci mogą używać tej statycznej klasy pomocniczej i podanej metody(#isApiVersionAtLeast(VERSION))do sprawdzania zgodności.
Wersja 1.0.0-rc01
8 października 2025 r.
androidx.wear:wear-core:1.0.0-rc01 jest publikowany bez zmian. Wersja 1.0.0-rc01 zawiera te zmiany.
Wersja 1.0.0-beta02
10 września 2025 r.
Publikacja androidx.wear:wear-core:1.0.0-beta02 Wersja 1.0.0-beta02 zawiera te zmiany.
Poprawki błędów
- Zapobiegać zgłaszaniu błędów przez
WearApiVersionHelperna starszych urządzeniach podczas sprawdzania nowszych interfejsów API.
Wersja 1.0.0-beta01
30 lipca 2025 r.
androidx.wear:wear-core:1.0.0-beta01 nie zawiera żadnych istotnych zmian w porównaniu z ostatnią wersją alfa. Wersja 1.0.0-beta01 zawiera te zmiany.
Wersja 1.0.0-alpha02
16 lipca 2025 r.
Publikacja androidx.wear:wear-core:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Aktualizacja
WearApiVersionHelpero VIC/Baklava (I4676d)
Poprawki błędów
- Ta biblioteka używa teraz adnotacji o wartościach null z JSpecify, które są używane w typach. Deweloperzy Kotlin powinni używać tych argumentów kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(Icbfb9, b/326456246).
Wersja 1.0.0-alpha01
29 maja 2024 r.
Publikacja androidx.wear:wear-core:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano nową klasę
WearApiVersionhelper, która pomaga w sprawdzaniu zgodności interfejsu API w czasie działania na urządzeniach z Wear OS. Klienci mogą używać tej statycznej klasy pomocniczej i podanej metody (#isApiVersionAtLeast(VERSION)) do sprawdzania zgodności.
Wear
Wersja 1.4
Wersja 1.4.0
25 lutego 2026 r.
Publikacja androidx.wear:wear:1.4.0 Wersja 1.4.0 zawiera te zmiany.
Ważne zmiany od wersji 1.3.0:
- Poprawka błędu dotyczącego pionowego wyśrodkowania ikony
ConfirmationOverlay, gdy nie ma wiadomości. I496d8
Wersja 1.4.0-rc01
28 stycznia 2026 r.
Publikacja androidx.wear:wear:1.4.0-rc01 Wersja 1.4.0-rc01 zawiera te zmiany.
- Między wersjami beta01 i rc01 nie ma żadnych nowych zmian.
Wersja 1.4.0-beta01
17 grudnia 2025 r.
Publikacja androidx.wear:wear:1.4.0-beta01 Wersja 1.4.0-beta01 zawiera te zmiany.
- Od poprzedniej wersji alfa nie wprowadzono znaczących zmian.
Wersja 1.4.0-alpha02
16 lipca 2025 r.
Publikacja androidx.wear:wear:1.4.0-alpha02 Wersja 1.4.0-alpha02 zawiera te zmiany.
Poprawki błędów
- Ta biblioteka używa teraz adnotacji o wartościach null z JSpecify, które są używane w typach. Deweloperzy korzystający z języka Kotlin powinni używać tych argumentów kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(If4b1a, b/326456246).
Wersja 1.4.0-alpha01
15 listopada 2023 r.
Publikacja androidx.wear:wear:1.4.0-alpha01 Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.
Poprawki błędów
- Wyśrodkuj pionowo ikonę
ConfirmationOverlay, gdy nie ma wiadomości. (I496d8)
Wersja 1.3
Wersja 1.3.0
9 sierpnia 2023 r.
androidx.wear:wear:1.3.0 została opublikowana bez zmian od 1.3.0-rc01. Wersja 1.3.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.2.0
- Przenieś
AmbientModeSupport, aby używaćLifecycleObserver. WycofajAmbientModeSupportna rzecz nowych klas uwzględniających cykl życia. - Aktualizacja
ConfirmationOverlayo nowe ikony/układ, czcionki i dane czcionek SwipeDismissTransitionHelperzaktualizowano, aby używać rysunku w tle zamiast drugiego elementuView, co pozwala uniknąć błędów podczas korzystania z funkcjiFragmentContainerViewSwipeDismissFrameLayoutanimacja została zaktualizowana, aby była zgodna z platformą Wear i implementacjami Wear Compose.SwipeDismissFrameLayoutpoprawka błędu, aby uniknąć przypadkowego zamykania fragmentów za pomocą pionowego przesunięcia;ArcLayoutobsługuje teraz wagi rozszerzenia, które działają podobnie do zwykłych wag układu.- Wesprzyj kanał
layoutDirectionnaArcLayout
Wersja 1.3.0-rc01
21 czerwca 2023 r.
androidx.wear:wear:1.3.0-rc01 została opublikowana bez zmian od 1.3.0-beta01. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.
Wersja 1.3.0-beta01
7 czerwca 2023 r.
Publikacja androidx.wear:wear:1.3.0-beta01 Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zaktualizowano
AmbientLifecycleObserverpo otrzymaniu opinii. NazwaAmbientLifecycleObserverInterfacezostała zmieniona naAmbientLifecycleObserver, a instancję można uzyskać, wywołującAmbientLifecycleObserver(...).isAmbientzostało przeniesione i jest teraz polem, a nie metodą. (I84b4f)
Poprawki błędów
- Dodano sprawdzanie wartości null, aby obsługiwać przypadki, w których widok nadrzędny ma wartość null podczas resetowania wartości alfa i tłumaczenia w
SwipeToDismiss. (Ib0ec7)
Wersja 1.3.0-alpha05
19 kwietnia 2023 r.
Publikacja androidx.wear:wear:1.3.0-alpha05 Wersja 1.3.0-alpha05 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Przenieś
AmbientModeSupport, aby używaćLifecycleObserver. WycofajAmbientModeSupportna rzecz nowych klas uwzględniających cykl życia. (I1593b)
Poprawki błędów
- Zaktualizowano
SwipeDismissTransitionHelpertło, aby używać elementów rysowalnych zamiast dodawania widoku, co pozwala uniknąć błędów podczas korzystania zFragmentContainerView. (I851cd)
Wersja 1.3.0-alpha04
25 stycznia 2023 r.
Publikacja androidx.wear:wear:1.3.0-alpha04 Wersja 1.3.0-alpha04 zawiera te zatwierdzenia.
Poprawki błędów
- Zaktualizowaliśmy animację w
SwipeDismissFrameLayout, aby była zgodna z platformą Wear i implementacjami Wear Compose. (I7261b)
Wersja 1.3.0-alpha03
24 sierpnia 2022 r.
Publikacja androidx.wear:wear:1.3.0-alpha03 Wersja 1.3.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
ArcLayoutobsługuje teraz wagi rozszerzenia, które działają podobnie do zwykłych wag układu. Oznacza to, że możesz określić względny rozmiar elementów podrzędnych bez konieczności bezpośredniego obliczania ich kątów. Dodaliśmy też opcjęMaxAngleDegrees, która jest uwzględniana podczas rozszerzania elementów podrzędnych z wagami. Możesz na przykład ograniczyć zakres łuku z kilkoma elementami podrzędnymi o różnych wagach do 90 stopni. Uwzględni to też miejsce zajmowane przez elementy nierozwinięte.
Zmiany w interfejsie API
- Dodaliśmy wagę do
ArcLayout.LayoutParams, która umożliwia widżetowi rozszerzenie się i wypełnienie dostępnego miejsca. Jeśli jest więcej niż 1 widżet, ich udział w dostępnym miejscu jest proporcjonalny do ich wagi. Dodaliśmy teżArcLayout.setMaxAngleDegrees, dzięki czemu możesz na przykład ograniczyć rozszerzenie do 90 stopni (uwaga: nie ma to wpływu na układ widżetów podrzędnych o stałym rozmiarze). WreszcieArcLayout.Widgetma terazsetSweepAngleDegrees, co pozwalaArcLayoutinformować widżet o wadze różnej od zera o jego rozmiarze. (I75f24) - Zaktualizowano dopuszczalność wartości null w przypadku
setColorFilter(I99ddf, b/236498063)
Wersja 1.3.0-alpha02
23 lutego 2022 r.
Publikacja androidx.wear:wear:1.3.0-alpha02 Wersja 1.3.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Wspieranie
layoutDirectionnaArcLayout(I14d49) - Ulepszony komunikat z opisem treści w przypadku nakładki potwierdzenia (I0fdf8)
- Zaktualizuj
ConfirmationOverlay, dodając nowe ikony lub układ. (If5b54)
Poprawki błędów
- Dodaliśmy reguły ProGuard, aby mieć pewność, że kod związany z oświetleniem otoczenia jest zachowywany (Idaa10).
- Zapobieganie przypadkowemu odrzucaniu fragmentów w SwipeDismissFrameLayout za pomocą pionowego przesunięcia (Idb6d8)
- Poprawka nakładki potwierdzenia, gdy nie zawiera ona wiadomości (I63e6f)
Wkład zewnętrzny
- Dae Gyu LEE (Samsung) - Avoid accidentally dismissing of fragments in SwipeDismissFrameLayout with a vertical fling (Idb6d8)
Wersja 1.3.0-alpha01
29 września 2021 r.
Publikacja androidx.wear:wear:1.3.0-alpha01 Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.
Poprawki błędów
ConfirmationOverlayteraz przesuwa ikonę w górę, aby pomieścić dłuższe wiadomości, bez wchodzenia w ramkę urządzenia (lub poza ekran). (I54bff)
Wersja 1.2
Wersja 1.2.0
15 września 2021 r.
Publikacja androidx.wear:wear:1.2.0 Wersja 1.2.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.1.0
Dodano komponent CurvedText, który umożliwia łatwe pisanie zakrzywionego tekstu zgodnie z krzywizną największego okręgu, jaki można wpisać w widoku. Przykład użycia:
<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" />
Dodano kontener ArcLayout do rozmieszczania elementów podrzędnych jeden po drugim w łuku w kierunku zgodnym lub przeciwnym do ruchu wskazówek zegara. Jego elementami podrzędnymi mogą być zarówno standardowe widżety Androida, jak i widżety „zakrzywione”, które implementują interfejs
ArcLayout.Widget. (I536da) Przykład użycia:<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>
Dodaliśmy nowy kontener układu DismissibleFrameLayout, który obsługuje zamykanie za pomocą przycisku Wstecz lub gestu przesuwania. Jest on przeznaczony do użycia w aktywności. Aby reagować na działanie polegające na odrzuceniu, musisz dodać co najmniej 1 odbiorcę. Słuchacz zwykle usuwa widok lub fragment z bieżącej aktywności. Metody setSwipeDismissible(boolean) i setBackButtonDismissible(boolean) umożliwiają bezpośrednie sterowanie funkcjami. Ten nowy układ ma zastąpić obecny SwipeDismissFrameLayout.
Dodano obsługę wskazywania, że aktywność może być „automatycznie wznawiana”, gdy urządzenie opuści tryb oświetlenia kinowego w klasie AmbientModeSupport. Ta funkcja była wcześniej dostępna w wycofanej klasie WearableActivity z WearableSupportLibrary. (I336ab)
Przeniesiono klasę WearableCalendarContract z Biblioteki pomocy dla urządzeń z Wear OS. Ten interfejs API udostępnia podzbiór danych dostępnych w CalendarContract, ale jest automatycznie synchronizowany z urządzeniami do noszenia. (I6f2d7)
Dodaliśmy nowy interfejs API
WearTypeHelperwandroidx.wear.utils, który pozwala określić, czy dane urządzenie z Wear OS jest przeznaczone na rynek chiński. (Ib01a9)Dodaliśmy funkcje ułatwień dostępu do
androidx.wear.widget.ConfirmationOverlay, które będą odczytywać wiadomości, jeśli ustawienie jest zgodne z opisem animacji. (I524dd)Naprawiliśmy błąd, który powodował awarię ConfirmationActivity, jeśli nie podano żadnej wiadomości. (Ie6055)
Naprawiliśmy błąd, który powodował, że przewijane w poziomie widoki RecyclerViews powodowały wyświetlanie podglądu
WearableDrawerLayoutwe wszystkich interakcjach. (I24c7f)
Wersja 1.2.0-rc01
1 września 2021 roku
androidx.wear:wear:1.2.0-rc01 jest publikowana bez zmian w porównaniu z ostatnią wersją beta. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Wersja 1.2.0-beta01
18 sierpnia 2021 r.
Publikacja androidx.wear:wear:1.2.0-beta01 Wersja 1.2.0-beta01 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiliśmy błąd, który powodował awarię ConfirmationActivity, jeśli nie podano wiadomości. (Ie6055)
Wersja 1.2.0-alpha13
4 sierpnia 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha13 Wersja 1.2.0-alpha13 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniono nazwę
WearTypeHelper.isChinaDevicenaWearTypeHelper.isChinaBuild. (I47302)
Poprawki błędów
- Dodaliśmy funkcje ułatwień dostępu do
androidx.wear.widget.ConfirmationOverlay, które będą odczytywać wiadomości, jeśli ustawisz kolejność, a następnie opis animacji. (I524dd)
Wersja 1.2.0-alpha12
21 lipca 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha12 Wersja 1.2.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy nowy interfejs API
WearTypeHelperwandroidx.wear.utils, który pozwala określić, czy dane urządzenie do noszenia jest przeznaczone na rynek chiński. (Ib01a9)
Wersja 1.2.0-alpha11
30 czerwca 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha11 Wersja 1.2.0-alpha11 zawiera te zmiany.
Poprawki błędów
- Naprawiliśmy błąd, który powodował, że przewijane w poziomie widoki RecyclerViews powodowały, że
WearableDrawerLayoutpojawiało się przy wszystkich interakcjach. (I24c7f)
Wersja 1.2.0-alpha10
2 czerwca 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha10 Wersja 1.2.0-alpha10 zawiera te zmiany.
Nowe funkcje
- Wersja Alpha10 poprawia obsługę ułatwień dostępu w przypadku tekstu zakrzywionego i układów ArcLayout. Wprowadziliśmy też drobne zmiany w nazwach w DismissibleFrameLayout, aby ułatwić korzystanie z interfejsu API.
Zmiany w interfejsie API
- Zmieniliśmy nazwy tych metod w
DismissibleFrameLayout(Ib195e):Callback#onDismissed->Callback#onDismissedFinishedisSwipeDismissible->isDismissableBySwipeisBackButtonDismissible->isDismissableByBackButton
- Ustaliliśmy ostateczne wersje tych metod (Ib195e):
setBackButtonDismissiblesetSwipeDismissibleregisterCallbackunregisterCallback
Poprawki błędów
- Używaj treści CurvedTextView w Talkbacku. (I05798)
- Lepsza dostępność w przypadku normalnych widoków w układzie ArcLayout. (I4418d)
Wersja 1.2.0-alpha09
18 maja 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha09 Wersja 1.2.0-alpha09 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy nową funkcję
CurvedTextView.setTypeface()(podobną do funkcjiTextView), która umożliwia ustawienie kroju pisma i stylu tekstu (pogrubienie lub kursywa). (I4653c) - Zmieniono nazwy
WearArcLayoutnaArcLayout,WearCurvedTextnaCurvedTextiWearArcLayout.ArcLayoutWidgetnaArcLayout.Widget. (I6e5ce)ArcLayout.Widgetzmienił(a) nazwęgetThicknessPxnagetThickness.- Stałe wyrównania w pionie w
ArcLayout.LayoutParamsmają teraz nazwy zaczynające się odVERTICAL_ALIGN_(zamiast poprzedniegoVALIGN_).
- W przypadku
CurvedTextViewmetodysetMinSweepDegreesisetMaxSweepDegreeszostały zastąpione przezsetSweepRangeDegrees(I7a9d9)
Wersja 1.2.0-alpha08
5 maja 2021 roku
Publikacja androidx.wear:wear:1.2.0-alpha08 Wersja 1.2.0-alpha08 zawiera te zmiany.
Zmiany w interfejsie API
- Aby zwiększyć przejrzystość kodu, dodaliśmy
@FloatRangeadnotacje do niektórych parametrów kąta i typów zwracanych. (I430dd) - W interfejsie
WearArcLayout.ArcLayoutWidgetmetodainsideClickAreanazywa się teraz isPointInsideClickArea. (Ia7307)
Wersja 1.2.0-alpha07
24 marca 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha07 Wersja 1.2.0-alpha07 zawiera te zmiany.
Poprawki błędów
- Naprawiono błędy związane z niezakrzywionymi elementami podrzędnymi w WearArcLayout spowodowane używaniem rozmiaru ekranu, w którym wysokość jest większa niż szerokość. Te niezakrzywione dzieci są teraz prawidłowo umieszczane w łuku na wszystkich typach ekranów.
Wersja 1.2.0-alpha06
27 stycznia 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha06 Wersja 1.2.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Przenieś bibliotekę Ongoing Activities do nowej biblioteki podrzędnej: wear-ongoing. Klasy są teraz dostępne w pakiecie androidx.wear.ongoing (wcześniej były w pakiecie androidx.wear.ongoingactivities) (I7c029).
- Przenieś klasę WearableCalendarContract z biblioteki Wearable Support Library do Androida X. Ten interfejs API udostępnia podzbiór danych dostępnych w CalendarContract, ale jest automatycznie synchronizowany z urządzeniami do noszenia. (I6f2d7)
Poprawki błędów
- Wyłącz domyślnie funkcję zamykania za pomocą przycisku Wstecz w Dismissible FrameLayout, ponieważ przesuwanie w celu zamknięcia pozostaje głównym sposobem powrotu do pełnego ekranu na urządzeniach Wearable (Ic24e3).
- Rozwiązaliśmy niektóre problemy z obsługą widoczności elementów podrzędnych w WearArcLayout (Icf912).
Wersja 1.2.0-alpha05
13 stycznia 2021 r.
Publikacja androidx.wear:wear:1.2.0-alpha05 Wersja 1.2.0-alpha05 zawiera te zmiany.
Poprawki błędów
- Zaktualizowano dokumentację Javadoc klasy AmbientModeSupport, aby zawierała przykładowe fragmenty kodu, które lepiej ilustrują ogólne zastosowanie tej klasy.
Wersja 1.2.0-alpha04
16 grudnia 2020 roku
Publikacja androidx.wear:wear:1.2.0-alpha04 Wersja 1.2.0-alpha04 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano obsługę wskazywania, że aktywność może być „automatycznie wznawiana”, gdy urządzenie opuści tryb oświetlenia kinowego w klasie AmbientModeSupport. Ta funkcja była wcześniej dostępna w wycofanej klasie WearableActivity z WearableSupportLibrary. (I336ab)
- OngoingActivity
- Podczas tworzenia obiektu OngoingActivity można teraz ustawić kategorię, np.
OngoingActivitiy.Builder.getCategory(String) - Klasa OngoingActivityData zawiera teraz sygnaturę czasową utworzenia OngoingActivity –
OngoingActivityData.getTimestamp() - (I91cb4)
- Podczas tworzenia obiektu OngoingActivity można teraz ustawić kategorię, np.
- Dodano obsługę ustawiania marginesów w przypadku elementów podrzędnych WearArcLayout przez zmianę parametrów układu na rozszerzające MarginLayoutParams, np. WearArcLayout.LayoutParams rozszerza android.view.ViewGroup.MarginLayoutParams. (I2cd88)
- Zmiana domyślnego typu kotwicy WearCurvedTextView na
WearArcLayout.ANCHOR_CENTER(wcześniejWearArcLayout.ANCHOR_START). Upraszcza to umowę między układem łukowym a zakrzywionym tekstem, ponieważ zakrzywiony tekst domyślnie rysuje się wyśrodkowany w osi X u góry, a nadrzędny układ łukowy może go obracać w odpowiednie miejsce. (I105ff)
Wersja 1.2.0-alpha03
2 grudnia 2020 r.
Publikacja androidx.wear:wear:1.2.0-alpha03 Wersja 1.2.0-alpha03 zawiera te zmiany.
Nowe funkcje
Nowy kontener układu DismissibleFrameLayout, który obsługuje zamykanie za pomocą przycisku Wstecz lub gestu przesuwania, przeznaczony do użycia w aktywności. Aby reagować na działanie polegające na odrzuceniu, musisz dodać co najmniej 1 odbiorcę. Słuchacz zwykle usuwa widok lub fragment z bieżącej aktywności. Metody setSwipeDismissible(boolean) i setBackButtonDismissible(boolean) umożliwiają bezpośrednie sterowanie funkcjami. Ten nowy układ ma zastąpić obecny SwipeDismissFrameLayout.
Zakrzywione widżety obsługują teraz zdarzenia dotknięcia. Zwykłe widżety w WearArcLayout będą otrzymywać wszystkie zdarzenia dotyku zmapowane na ich przestrzeń współrzędnych. W przypadku WearCurvedTextView (wewnątrz WearArcLayout lub nie) można ustawić procedury obsługi onClick i onLongClick.
Klasy trwających aktywności są teraz obiektami VersionedParcelable zamiast korzystać z niestandardowej serializacji/deserializacji. Ikona statyczna i intencja dotknięcia są teraz wymagane.
Zmiany w interfejsie API
- Atrybut „sweepDegrees” w przypadku elementu WearCurvedTextView jest podzielony na minSweepDegrees i maxSweepDegrees, co zapewnia większą elastyczność układu tego widżetu.
Wersja 1.2.0-alpha02
11 listopada 2020 roku
Publikacja androidx.wear:wear:1.2.0-alpha02 Wersja 1.2.0-alpha02 zawiera te zmiany.
W tej wersji po raz pierwszy dodaliśmy nowy interfejs „Ongoing Activities API”. Ten interfejs API może być używany przez deweloperów do sygnalizowania, że trwa długotrwała aktywność, np. ćwiczenie fizyczne lub sesja odtwarzania multimediów. Umożliwia deweloperom udostępnianie okresowych aktualizacji stanu, takich jak „dystans i czas biegu” lub „odtwarzany utwór”, które będą wyświetlane na tarczy zegarka lub w programie uruchamiającym aplikacje. Ta funkcja jest przeznaczona dla przyszłych urządzeń z włączoną funkcją trwającej aktywności.
Zmiany w interfejsie API
- Nowy interfejs API do bieżących aktywności, który na „nieobsługiwanych urządzeniach” nie wykonuje żadnych działań. (I69a31)
Wersja 1.2.0-alpha01
28 października 2020 r.
Publikacja androidx.wear:wear:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Dodano komponent WearCurvedTextView, który umożliwia łatwe pisanie zakrzywionego tekstu zgodnie z krzywizną największego okręgu, jaki można wpisać w widoku. Przykład użycia:
<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"
/>

- Dodano kontener WearArcLayout, który umożliwia rozmieszczanie elementów podrzędnych jeden po drugim w łuku w kierunku zgodnym lub przeciwnym do ruchu wskazówek zegara. Elementami podrzędnymi mogą być standardowe widżety Androida lub widżety „zakrzywione”, które implementują interfejs ArcLayoutWidget. Przykład użycia:
<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)
Wersja 1.1
Wersja 1.1.0
14 października 2020 r.
Publikacja androidx.wear:wear:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Najważniejsze zmiany od wersji 1.0.0
- Dodaliśmy prefiks
layout_do atrybutu boxedEdges (terazlayout_BoxedEdges) dlaBoxInsetLayout, aby zachować zgodność z konwencją nazewnictwa Androida. Spowoduje to usunięcie błędu narzędzia do sprawdzania kodu w Android Studio w przypadku tych atrybutów. (I4272f) - Dodano opcjonalny parametr
EXTRA_ANIMATION_DURATION_MILLISdo parametruConfirmationActivity, aby umożliwić określenie czasu wyświetlania okna potwierdzenia. (adb83ce, b/143356547) - Zaktualizowano
WearableActionDrawView, aby opóźnić wczytywanie panelu działań do momentu jego pierwszego otwarcia. (I01026, b/163870541)
Wersja 1.1.0-rc03
2 września 2020 r.
Publikacja androidx.wear:wear:1.1.0-rc03 Wersja 1.1.0-rc03 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że po otwarciu panelu działań nie wyświetlała się jego zawartość. (I01026, b/163870541)
Wersja 1.1.0-rc02
24 czerwca 2020 r.
Publikacja androidx.wear:wear:1.1.0-rc02 Wersja 1.1.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Dodaliśmy prefiks
layout_do atrybutu boxedEdges (terazlayout_boxedEdges) dlaBoxInsetLayout, aby zachować zgodność z konwencją nazewnictwa Androida. Spowoduje to usunięcie błędu narzędzia do sprawdzania kodu w Android Studio w przypadku tych atrybutów.
Wersja 1.1.0-rc01
14 maja 2020 r.
androidx.wear:wear:1.1.0-rc01 została opublikowana bez zmian od .1.0-beta01. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
29 kwietnia 2020 r.
androidx.wear:wear:1.1.0-beta01 została opublikowana bez zmian od androidx.wear:wear:1.1.0-alpha01. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Wersja 1.1.0-alpha01
15 kwietnia 2020 roku
Publikacja androidx.wear:wear:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano opcjonalny parametr
EXTRA_ANIMATION_DURATION_MILLISdo parametruConfirmationActivity, aby umożliwić określenie czasu wyświetlania okna potwierdzenia. (adb83ce, 134523c, b/143356547)
Poprawki błędów
- Zaktualizowano
WearableActionDrawView, aby opóźnić wczytywanie panelu działań do momentu jego pierwszego otwarcia. (5cd32f7)
Wear-Remote-Interactions
Wersja 1.3.0
Wersja 1.3.0-beta01
23 września 2026 r.
Publikacja androidx.wear:wear-remote-interactions:1.3.0-beta01 Wersja 1.3.0-beta01 zawiera te zmiany.
- Dodano elementy
startRemoteActivityAttemptUnlockistartPhoneActivityWithUnlockdoRemoteActivityHelper, co umożliwia aplikacjom na Wear OS rozpoczęcie aktywności na połączonym telefonie po jego odblokowaniu, pod warunkiem że użytkownik zarejestruje się w funkcji i będzie korzystać z możliwości platformy.startRemoteActivityAttemptUnlockmoże wrócić do istniejącegostartRemoteActivity, gdy funkcja jest niedostępna.
Wersja 1.3.0-alpha01
19 maja 2026 r.
Publikacja androidx.wear:wear-remote-interactions:1.3.0-alpha01 Wersja 1.3.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
startRemoteActivityAttemptUnlockistartPhoneActivityWithUnlockdoRemoteActivityHelper, co umożliwia aplikacjom na Wear OS rozpoczęcie aktywności na połączonym telefonie po jego odblokowaniu, pod warunkiem że użytkownik zarejestruje się w usłudze i będzie korzystać z funkcji platformy.startRemoteActivityAttemptUnlockmoże wrócić do istniejącegostartRemoteActivity, gdy funkcja jest niedostępna. (Ic23ae, b/468374830)
Wersja 1.2
Wersja 1.2.0
25 lutego 2026 r.
Publikacja androidx.wear:wear-remote-interactions:1.2.0 Wersja 1.2.0 zawiera te zmiany.
Ważne zmiany od wersji 1.1.0:
- Zaktualizowano
RemoteActivityHelper.startRemoteActivity, aby w razie dostępności (od Wear 6) korzystać z nowego publicznego interfejsu Wear SDK API (startRemoteActivity). Id1e77 - Zaktualizowano zależność od wersji Play Basement, która zawierała lukę w zabezpieczeniach CVE-2022-2390.
Wersja 1.2.0-rc01
28 stycznia 2026 r.
Publikacja androidx.wear:wear-remote-interactions:1.2.0-rc01 Wersja 1.2.0-rc01 zawiera te zmiany.
Poprawki błędów
- Zaktualizowano zależność od wersji Play Basement, która zawierała lukę w zabezpieczeniach CVE-2022-2390.
Wersja 1.2.0-beta01
17 grudnia 2025 r.
Publikacja androidx.wear:wear-remote-interactions:1.2.0-beta01 Wersja 1.2.0-beta01 zawiera te zmiany.
- Od poprzedniej wersji alfa nie wprowadzono znaczących zmian.
Wersja 1.2.0-alpha01
2 lipca 2025 r.
Publikacja androidx.wear:wear-remote-interactions:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Zaktualizowano
RemoteActivityHelper.startRemoteActivity, aby w razie dostępności (od Wear 6) korzystać z nowego publicznego interfejsu Wear SDK API (startRemoteActivity). (Id1e77)
Wersja 1.1
Wersja 1.1.0
11 grudnia 2024 r.
Publikacja androidx.wear:wear-remote-interactions:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0
- Dodaliśmy
RemoteActivityHelper.isRemoteActivityHelperAvailable, która pomaga sprawdzić, czy funkcja uruchamiania zdalnej aktywności jest dostępna. (I107a9)
Wersja 1.1.0-rc01
16 października 2024 r.
androidx.wear:wear-remote-interactions:1.1.0-rc01 została opublikowana bez zmian od 1.1.0-beta01. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
24 lipca 2024 r.
Publikacja androidx.wear:wear-remote-interactions:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany. Wersja 1.3.0-beta01 biblioteki Wear Remote Interactions wskazuje, że ta wersja biblioteki jest w pełni funkcjonalna, a interfejs API jest zablokowany (z wyjątkiem miejsc oznaczonych jako eksperymentalne).
Wersja 1.1.0-alpha02
10 stycznia 2024 r.
Publikacja androidx.wear:wear-remote-interactions:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy
RemoteActivityHelper.isRemoteActivityHelperAvailable, która pomaga sprawdzić, czy funkcja uruchamiania zdalnej aktywności jest dostępna. (I107a9) - Zaktualizowaliśmy konstruktor
RemoteActivityHelper, aby miał opcjonalny parametr zgodny z językiem Java. (I75554)
Wersja 1.1.0-alpha01
21 czerwca 2023 r.
Publikacja androidx.wear:wear-remote-interactions:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Poprawki błędów
- Ulepszyliśmy sposób obsługi ukończenia i błędów w
RemoteActivityHelper. (I60d60)
Wkład zewnętrzny
- Usuń zależność Guava z
wear-remote-interactionsi użyj mniejszych alternatyw.
Wear-Input
Wersja 1.2
Wersja 1.2.0
10 września 2025 r.
Publikacja androidx.wear:wear-input:1.2.0 i androidx.wear:wear-input-testing:1.2.0 Wersja 1.2.0 zawiera te zmiany.
Ważne zmiany od wersji 1.1.0:
- Stałe dotyczące lokalizacji przycisku fizycznego.
- Dodano
WearableRemoteInputExtenderdo ustawiania dodatków specyficznych dla Wear naandroid.app.RemoteInput(np. włączanie wpisywania emotikonów).
Wersja 1.2.0-rc01
27 sierpnia 2025 roku
androidx.wear:wear-input:1.2.0-rc01 i androidx.wear:wear-input-testing:1.2.0-rc01 zostały udostępnione bez zmian w porównaniu z ostatnią wersją beta. Wersja 1.2.0-rc01 zawiera te zmiany.
Wersja 1.2.0-beta01
30 lipca 2025 r.
Wersje androidx.wear:wear-input:1.2.0-beta01 i androidx.wear:wear-input-testing:1.2.0-beta01 zostały udostępnione bez istotnych zmian w porównaniu z ostatnimi wersjami alfa. Wersja 1.2.0-beta01 zawiera te zmiany.
Wersja 1.2.0-alpha04
16 lipca 2025 r.
Publikacja androidx.wear:wear-input:1.2.0-alpha04 i androidx.wear:wear-input-testing:1.2.0-alpha04 Wersja 1.2.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Przy obliczaniu położenia przycisków fizycznych względem ekranu uwzględniaj obrót ekranu. (87a57e)
Zmiany w interfejsie API
- Zmień nazwę LOC* na LOCATION* w wear-input. (I5e879)
Poprawki błędów
- Ta biblioteka używa teraz adnotacji o wartościach null z JSpecify, które są używane w typach. Deweloperzy Kotlin powinni używać tych argumentów kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(Icbfb9, b/326456246).
Wersja 1.2.0-alpha02
29 września 2021 r.
Publikacja androidx.wear:wear-input:1.2.0-alpha02 i androidx.wear:wear-input-testing:1.2.0-alpha02 Wersja 1.2.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniono nazwę
disallowEmojinasetEmojisAllowedwWearableRemoteInputExtender, aby określić, czy będzie wyświetlana opcja rysowania emoji. (I28393)
Wersja 1.2.0-alpha01
15 września 2021 r.
Publikacja androidx.wear:wear-input:1.2.0-alpha01 i androidx.wear:wear-input-testing:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Udostępniono wszystkie stałe wartości lokalizacji przycisku z
WearableButtons. (Ibb12c) - Dodano klasę
WearableRemoteInputExtender, której można używać do dodawania dodatkowych informacji specyficznych dla Wear do android.app.RemoteInput. (I01903)
Wersja 1.1
Wersja 1.1.0
18 sierpnia 2021 r.
Publikacja androidx.wear:wear-input:1.1.0 i androidx.wear:wear-input-testing:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0
- Dodano:
RemoteInputIntentHelper.- Tej klasy można używać do tworzenia intencji RemoteInput. Możesz go użyć, aby poprosić użytkowników o informacje w ramach dostosowywanej aktywności.
Wersja 1.1.0-rc01
4 sierpnia 2021 r.
Publikacja androidx.wear:wear-input:1.1.0-rc01 i androidx.wear:wear-input-testing:1.1.0-rc01 Wersja 1.1.0-rc01 zawiera te zmiany.
Brak zmian w interfejsie API od androidx.wear:wear-input:1.1.0-beta01 i androidx.wear:wear-input-testing:1.1.0-beta01
Wersja 1.1.0-beta01
21 lipca 2021 r.
androidx.wear:wear-input:1.1.0-beta01 i androidx.wear:wear-input-testing:1.1.0-beta01 zostały opublikowane bez zmian od 1.1.0-alpha03. Wersja 1.1.0-beta01 zawiera te zmiany.
Wersja 1.1.0-alpha03
30 czerwca 2021 r.
Publikacja androidx.wear:wear-input:1.1.0-alpha03 i androidx.wear:wear-input-testing:1.1.0-alpha03 Wersja 1.1.0-alpha03 zawiera te zmiany.
Poprawki błędów
- Naprawiliśmy błąd, który powodował odrzucanie intencji RemoteInput, do których dodano
RemoteInputza pomocąRemoteInputHelper.putRemoteInputsExtra.
Wersja 1.1.0-alpha02
18 maja 2021 r.
Publikacja androidx.wear:wear-input:1.1.0-alpha02 i androidx.wear:wear-input-testing:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Metody
RemoteInputIntentHelperużywane do pobierania lub umieszczania dodatków reprezentujących etykiety tytułu, anulowania, potwierdzenia i w trakcie realizacji używają terazCharSequencezamiastString. (I0e71f)
Wersja 1.1.0-alpha01
27 stycznia 2021 r.
Publikacja androidx.wear:wear-input:1.1.0-alpha01 i androidx.wear:wear-input-testing:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Przenieś klasę RemoteInputIntent z biblioteki Wearable Support Library do AndroidaX. Przeniesiona klasa zmienia nazwę na RemoteInputIntentHelper, która udostępnia funkcje pomocnicze do obsługi zdalnych danych wejściowych przez uruchamianie intencji. (I47cee)
Wersja 1.0
Wersja 1.0.0
2 grudnia 2020 r.
Publikacja androidx.wear:wear-input:1.0.0 i androidx.wear:wear-input-testing:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
To wydanie jest identyczne z wydaniem 1.0.0-rc01.
Główne funkcje wersji 1.0.0
Migracja funkcji WearableButtons z biblioteki pomocy Wearable Support Library do Jetpacka.
Dodano
androidx.wear.input.test.TestWearableButtonsProvider, który implementujeandroidx.wear.input.WearableButtonsProvider, aby ułatwić testowanie aplikacji opracowanych za pomocą bibliotekiandroidx.wear:wear-input.
Wersja 1.0.0-rc01
11 listopada 2020 roku
Publikacja androidx.wear:wear-input:1.0.0-rc01 i androidx.wear:wear-input-testing:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Ta wersja jest identyczna z wersją 1.0.0-beta01.
Wersja 1.0.0-beta01
28 października 2020 r.
androidx.wear:wear-input:1.0.0-beta01 i androidx.wear:wear-input-testing:1.0.0-beta01 zostały opublikowane bez zmian od 1.1.0-alpha01. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Wear-Input-Testing w wersji 1.0.0-alpha01
14 października 2020 r.
Publikacja androidx.wear:wear-input-testing:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodano
androidx.wear.input.test.TestWearableButtonsProvider, który implementujeandroidx.wear.input.WearableButtonsProvider, aby ułatwić testowanie aplikacji opracowanych za pomocą bibliotekiandroidx.wear:wear-input. (I0ed0c)
Wear-Input w wersji 1.0.0-alpha01
2 września 2020 r.
Publikacja androidx.wear:wear-input:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Migracja funkcji WearableButtons z biblioteki pomocy Wearable Support Library do Jetpacka. Dodatkowa obsługa testowania zostanie udostępniona w androidx.wear:wear-input-testing w kolejnej wersji Jetpacka.
Wear-Ongoing
Wersja 1.1
Wersja 1.1.0
10 września 2025 r.
Publikacja androidx.wear:wear-ongoing:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0:
- Dodaliśmy pole opisu treści do sekcji Trwające aktywności, które jest używane przez usługi ułatwień dostępu.
- Dodaliśmy adnotacje
RequiresPermissiondo interfejsów API, które wymagają uprawnieniaPOST_NOTIFICATIONSw pakiecie SDK w wersji 33 lub nowszej.
Wersja 1.1.0-rc01
27 sierpnia 2025 roku
androidx.wear:wear-ongoing:1.1.0-rc01 jest publikowana bez zmian od ostatniej wersji beta. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
30 lipca 2025 r.
androidx.wear:wear-ongoing:1.1.0-beta01 nie zawiera żadnych istotnych zmian w porównaniu z ostatnią wersją alfa. Wersja 1.1.0-beta01 zawiera te zmiany.
Wersja 1.1.0-alpha01
23 sierpnia 2023 r.
Publikacja androidx.wear:wear-ongoing:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj pole opisu treści do sekcji Bieżąca aktywność. Usługi ułatwień dostępu będą używać tego opisu do opisania trwającej aktywności. (I79fc6)
Poprawki błędów
- Dodaliśmy
@RequiresPermissiondo interfejsów API, które wymagają przyznania uprawnieniaPOST_NOTIFICATIONSw przypadku pakietu SDK w wersji 33 lub nowszej. (Ie542e, b/238790278)
Wersja 1.0
Wersja 1.0.0
1 września 2021 roku
Publikacja androidx.wear:wear-ongoing:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
Główne funkcje wersji 1.0.0
- Wear Ongoing Activities API to interfejs API dla deweloperów, w tym deweloperów zewnętrznych, który służy do oznaczania aktywności jako „trwającej” i przekazywania wymaganych informacji.
- Bieżące działania to działania, które mogą być wykonywane w tle na zegarku (np. treningi, połączenia i multimedia). Na Wear 3 aktywność zadeklarowana jako trwająca będzie bardziej widoczna dzięki specjalnej ikonie nakładki na tarczy zegarka i innemu renderowaniu w programie uruchamiającym aplikacje.
- Więcej informacji znajdziesz w przewodniku po trwającej aktywności na Wear (w języku angielskim).
Wersja 1.0.0-rc01
18 sierpnia 2021 r.
androidx.wear:wear-ongoing:1.0.0-rc01 została opublikowana bez zmian od 1.0.0-beta01. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Wersja 1.0.0-beta01
4 sierpnia 2021 r.
Publikacja androidx.wear:wear-ongoing:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Niektóre metody ustawiające w klasie OngoingActivity.Builder akceptują teraz argument null, aby zapewnić symetrię i spójność metod ustawiających i pobierających (I17ee5).
Wersja 1.0.0-alpha06
2 czerwca 2021 r.
Publikacja androidx.wear:wear-ongoing:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaj pole Tytuł do trwającej aktywności. (I7a405)
Poprawki błędów
SerializationHelper.copy()wykonuje teraz kopię ochronną informacji (I8b276).- Ulepszona dokumentacja setCategory (Iff01f)
Wersja 1.0.0-alpha05
18 maja 2021 r.
Publikacja androidx.wear:wear-ongoing:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Zmiany w interfejsie API
OngoingActivityma teraz metody pobierania wszystkich wartości ustawionych bezpośrednio za pomocą klasy Builder (lub wartości domyślnych pobranych z powiązanego powiadomienia). (Id8ac8)- Nowa klasa
Statusjest teraz używana do tworzenia stanuOngoingActivity. - Interfejsy
OngoingActivityDataiOngoingActivityStatusnie są już częścią publicznego interfejsu API.
- Nowa klasa
Klasy
TextStatusPartiTimerStatusPartnie są już częścią publicznego interfejsu API. (I57fb6)- Aby utworzyć
Partz tekstem statycznym, użyjStatus.TextPart. - Aby utworzyć
Partze stoperem (odliczającym w górę), użyjStatus.Stopwatch - Aby utworzyć
Partz licznikiem czasu (odliczającym), użyjStatus.Timer
- Aby utworzyć
Wersja 1.0.0-alpha04
5 maja 2021 roku
Publikacja androidx.wear:wear-ongoing:1.0.0-alpha04 Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- W przypadku OngoingActivity metody z funkcji fromExistingOngoingActivity są teraz wywoływane jako recoverOngoingActivity.
- Klasa OngoingActivity ma teraz pełny zestaw funkcji pobierających, które wcześniej były dostępne tylko w klasie OngoingActivityData. (I0ee4d)
Wear-Phone-Interactions
Wersja 1.1
Wersja 1.1.1
15 lipca 2026 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.1 Wersja 1.1.1 zawiera te zmiany.
Luki w zabezpieczeniach i poprawki
- Dodaliśmy weryfikację parametru pakietu
redirect_uriwRemoteAuthService. Dzięki temu segment pakietu w parametrze zapytaniaredirect_uriw adresie URL żądania jest zgodny ze zweryfikowaną nazwą pakietu wywołującego podczas wysyłania żądania autoryzacji na telefon i odbierania tokena. (I19da5, b/510833682)
Wersja 1.1.0
26 lutego 2025 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0
- Ta wersja zawiera ważną poprawkę błędu w przypadku aplikacji działających na Wear OS 5 (API na poziomie 34) lub nowszym i kierowanych na API na poziomie 35 lub nowszym.
- Aplikacje powinny zaktualizować tę wersję biblioteki przed zaktualizowaniem
targetSdkVersiondo wersji 35 lub nowszej. - W przeciwnym razie zostanie zgłoszony wyjątek czasu działania.
- Dodaliśmy nową definicję typu sparowanego urządzenia –
none, gdy urządzenie nie jest sparowane z telefonem.
Wersja 1.1.0-rc01
12 lutego 2025 r.
androidx.wear:wear-phone-interactions:1.1.0-rc01 nie zawiera żadnych istotnych zmian w porównaniu z ostatnią wersją beta. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
29 stycznia 2025 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany.
Nowe funkcje
Wersja 1.1.0-beta01 biblioteki Wear Phone Interactions wskazuje, że ta wersja biblioteki jest w pełni funkcjonalna, a interfejs API jest zablokowany (z wyjątkiem miejsc oznaczonych jako eksperymentalne). Wear Phone Interactions 1.1 zawiera te nowe funkcje i interfejsy API:
- Dodano usługę
redirectUrldo usługiOAuthRequest. - Poprawki w dokumentacji
- Dodatkowy typ w
PhoneTypeHelper, aby określić, kiedy urządzenie nie jest sparowane z telefonem, zamiast używać istniejącego typu nieznanego.
Zmiany w interfejsie API
- Dodano nową definicję typu sparowanego urządzenia – brak, gdy urządzenie nie jest sparowane z telefonem. (I06cb8)
Wersja 1.1.0-alpha05
11 grudnia 2024 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0-alpha05 Wersja 1.1.0-alpha05 zawiera te zmiany.
Poprawki błędów
- Naprawiono błąd powodujący awarię podczas działania na Wear OS 5 (API na poziomie 34) lub nowszym, gdy aplikacja jest kierowana na API na poziomie 35 lub nowszym. Aplikacje powinny zaktualizować tę wersję biblioteki przed zaktualizowaniem
targetSdkVersiondo wersji 35 lub nowszej.
Wersja 1.1.0-alpha04
10 stycznia 2024 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0-alpha04 Wersja 1.1.0-alpha04 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy funkcję
RemoteAuthClient.isRemoteAuthAvailable, która sprawdza, czy dostępna jest zdalna autoryzacja. (Ibc10c)
Wersja 1.1.0-alpha03
9 marca 2022 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0-alpha03 Wersja 1.1.0-alpha03 zawiera te zmiany.
Poprawki błędów
redirectUrlzOAuthRequestzwraca teraz pusty ciąg znaków, jeśli w danym adresie URL żądania nie jest ustawiony adres URL przekierowania. (I44242)
Wersja 1.1.0-alpha02
15 grudnia 2021 roku
Publikacja androidx.wear:wear-phone-interactions:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.
Poprawki błędów
- Popraw błędy w dokumentacji
RemoteAuthClient, w tym błąd w przykładzie kodu i nieaktywny link doErrorCode(I260e8).
Wersja 1.1.0-alpha01
15 września 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
Wersja 1.0
Wear-Phone-Interactions w wersji 1.0.1
15 grudnia 2021 roku
Publikacja androidx.wear:wear-phone-interactions:1.0.1 Wersja 1.0.1 zawiera te zatwierdzenia.
Poprawki błędów
- Podczas próby wyłączenia powiadomień o przekazywaniu bez
excludedTagszBridgingManagerzgłoszono stały wyjątek.
Wear-Phone-Interactions Wear-Remote-Interactions
Wersja 1.0
Wersja 1.0.0
15 września 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0 i androidx.wear:wear-remote-interactions:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
Główne funkcje wersji 1.0.0
Biblioteka interakcji z telefonem zawiera interfejsy API do interakcji między urządzeniami do noszenia a telefonami. Zawiera on te informacje:
PhoneDeviceType, która udostępnia metody pomocnicze do określania typu telefonu, z którym jest sparowany bieżący zegarek. Jest ona przeznaczona tylko do użytku na urządzeniach do noszenia.BridgingManager,BridgingManagerServiceiBridgingConfig, aby włączać i wyłączać powiadomienia w czasie działania programu oraz opcjonalnie ustawiać tagi dla powiadomień, które są zwolnione z trybu pomostowego.RemoteAuthClient, która obsługuje zdalne uwierzytelnianie na urządzeniach do noszenia oraz dodawanie rozszerzenia OAuth PKCE. Dostępne są dodatkowe moduły obsługi i klasy pomocnicze do komunikacji.
Biblioteka interakcji zdalnych zawiera interfejsy API do interakcji między urządzeniami do noszenia a telefonami. Zawiera on te informacje:
WatchFaceConfigIntentHelper, udostępniając funkcje pomocnicze do określania identyfikatora i nazwy komponentu w aktywnościach konfiguracyjnych tarczy zegarka na telefonie.RemoteActivityHelper, której można używać do otwierania intencji na innych urządzeniach (np. z zegarka na telefon).
Wersja 1.0.0-rc01
1 września 2021 roku
Publikacja androidx.wear:wear-phone-interactions:1.0.0-rc01 i androidx.wear:wear-remote-interactions:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono błąd, który uniemożliwiał przekazywanie do wywołującego błędów zgłaszanych w usługach Google Play podczas korzystania z RemoteActivityHelper (I60d60).
- Naprawiono błąd, który powodował, że w przypadku braku połączonych węzłów lub gdy żądany identyfikator węzła nie został znaleziony, funkcja RemoteActivityHelper nigdy nie realizowała obiektu Future (I60d60).
Wersja 1.0.0-beta01
18 sierpnia 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0-beta01 i androidx.wear:wear-remote-interactions:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmieniono nazwę klasy
RemoteIntentHelpernaRemoteActivityHelper. Zmieniono nazwy funkcjiRemoteIntentHelper#getRemoteIntentExtraIntentiRemoteIntentHelper#getRemoteIntentNodeIdnaRemoteActivityHelper#getTargetIntentiRemoteActivityHelper#getTargetNodeId. (Id2042)
Wear-Phone-Interactions w wersji 1.0.0-alpha07
4 sierpnia 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0-alpha07 Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmieniono nazwę
WearTypeHelper.isChinaDevicenaWearTypeHelper.isChinaBuild. (I47302) - Zaktualizowaliśmy bibliotekę RemoteAuthClient, aby automatycznie wybierała adres redirect_uri na podstawie typu urządzenia (RoW/Chiny). (I38866)
- Naprawiliśmy błąd, który powodował niepowodzenie konwersji BridgingConfig do/z pakietu z błędem ClassCastException. Dodaliśmy testy jednostkowe dla klasy BridgingManagerService. (I68ecb)
Wear-Remote-Interactions w wersji 1.0.0-alpha06
4 sierpnia 2021 r.
Publikacja androidx.wear:wear-remote-interactions:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Wear-Phone-Interactions w wersji 1.0.0-alpha06
21 lipca 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Klasa
BridgingManagerSeviceBinderjest teraz podklasą klasy Service i została zmieniona na BridgingManagerSevice. (I9fca2) - Metoda
RemoteAuthClient.Callback.onAuthorizationErrorzostała zmieniona tak, aby zawierała parametr OAuthRequest. Metody wymagające wywołania zwrotnego wymagają teraz również wykonawcy, na którym ma być uruchomione wywołanie zwrotne. (I35e11)
Poprawki błędów
- Ulepszyliśmy interfejs API uwierzytelniania, dodając więcej udokumentowanych parametrów i w miarę możliwości używając właściwości. (I12287)
Wear-Phone-Interactions w wersji 1.0.0-alpha05
30 czerwca 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Poprawki błędów
- Udokumentowane parametry, które należy przekazać w konstruktorze dla
BridgingConfig.Builder.
Wear-Remote-Interactions w wersji 1.0.0-alpha05
21 lipca 2021 r.
Publikacja androidx.wear:wear-remote-interactions:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Zmiany w interfejsie API
Dodaliśmy klasę
RemoteIntentHelper(wcześniej RemoteIntent w bibliotece Wearable Support Library), której można używać do otwierania intencji na innych urządzeniach (np. z zegarka na telefon). (I1d7e0)Klasa PlayStoreAvailability została usunięta z biblioteki AndroidX. Aby sprawdzić, czy Sklep Play jest dostępny na połączonym telefonie, użyj metody
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType, która pozwala określić, czy połączony telefon to urządzenie z Androidem. Następnie użyj metodyandroidx.wear.utils.WearTypeHelper.isChinaDevice, aby sprawdzić, czy podłączony telefon jest urządzeniem chińskim. Jeśli telefon jest urządzeniem z Androidem i nie jest to urządzenie chińskie, Sklep Play będzie dostępny. (Ie7dec)
Wear-Phone-Interactions w wersji 1.0.0-alpha04
7 kwietnia 2021 r.
Publikacja androidx.wear:wear-phone-interactions:1.0.0-alpha04 Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zaktualizowaliśmy stałe
ErrorCode, aby nowa biblioteka była wstecznie zgodna z implementacją w bibliotece pomocy Wearable.
Poprawki błędów
- Naprawiono wyjątek powodowany przez nowy interfejs OAuth API podczas rozpoczynania sesji OAuth.
Wear-Remote-Interactions w wersji 1.0.0-alpha03
7 kwietnia 2021 r.
Publikacja androidx.wear:wear-remote-interactions:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmieniono
PlayStoreAvailabilityna klasę zawierającą obiekt towarzyszący z metodami statycznymi. Sposób używania pozostaje bez zmian.
Poprawki błędów
- Poprawiliśmy dokument podsumowujący dla
WatchFaceConfigIntentHelper, aby prawidłowo wyświetlać przykładowy kod z rzeczywistymi znakami HTML.
Wear-Ongoing Wear-Phone-Interactions w wersji 1.0.0-alpha03
10 marca 2021 r.
Publikacja androidx.wear:wear-ongoing:1.0.0-alpha03 i androidx.wear:wear-phone-interactions:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Przenieś OAuthClient z biblioteki pomocy Wearable do Androida X. Ta przeniesiona klasa została zmieniona na RemoteAuthClient i umożliwia zdalne uwierzytelnianie na urządzeniach do noszenia oraz dodawanie rozszerzenia OAuth PKCE. Dostępne są dodatkowe moduły obsługi i klasy pomocnicze do komunikacji.
- Trwające aktywności można teraz powiązać z powiadomieniem zawierającym tag, korzystając z nowego konstruktora OngoingActivity.Builder.
Zmiany w interfejsie API
- Dodano obsługę tagów powiadomień w bibliotece trwających aktywności (I653b4).
- Migracja OAuthClient z biblioteki pomocy Wear Support Library do AndroidX i dodanie obsługi rozszerzenia OAuth PKCE (I3eaaa)
Wear-Remote-Interactions w wersji 1.0.0-alpha02
10 marca 2021 r.
Publikacja androidx.wear:wear-remote-interactions:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Migracja klasy PlayStoreAvailability z biblioteki pomocy Wearable Support Library do AndroidaX, która udostępnia interfejs API do sprawdzania, czy Sklep Play jest dostępny na telefonie.
Poprawki błędów
- Migracja klasy PlayStoreAvailability z biblioteki Wearable Support Library do Androida X. (I69bfe)
Wersja 1.0.0-alpha02
10 lutego 2021 r.
Publikacja androidx.wear:wear-ongoing:1.0.0-alpha02 i androidx.wear:wear-phone-interactions:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaliśmy obsługę bardziej złożonych stanów. Składają się one z szablonu (lub kilku szablonów) i serii części, które będą używane do wypełniania obiektów zastępczych szablonu. Klasa OngoingActivityStatus ma teraz statyczną metodę tworzenia prostych stanów z tylko 1 elementem (tekstem lub licznikiem czasu) oraz klasę Builder do tworzenia bardziej złożonych stanów. (I1fe81)
- Przeniesienie klas BridgingManager i BridgingConfig z biblioteki Wear Support Library do Androida X, który udostępnia interfejsy API umożliwiające włączanie i wyłączanie powiadomień w czasie działania oraz opcjonalne ustawianie tagów powiadomień wyłączonych z trybu pomostowego. (I3a17e)
Wersja 1.0.0-alpha01
27 stycznia 2021 r.
androidx.wear:wear-ongoing:1.0.0-alpha01, androidx.wear:wear-phone-interactions:1.0.0-alpha01 i androidx.wear:wear-remote-interactions:1.0.0-alpha01 są udostępnione. Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
Przenieś bibliotekę Ongoing Activities do nowej biblioteki podrzędnej: wear-ongoing. Klasy są teraz dostępne w pakiecie androidx.wear.ongoing (wcześniej były w pakiecie androidx.wear.ongoingactivities) (I7c029)
Utwórz nową bibliotekę pomocy, która będzie zawierać klasy obsługujące interakcje między urządzeniami z Wear OS a telefonami. Początkowo zawiera klasy przeniesione z biblioteki pomocy dotyczącej urządzeń do noszenia. (Id5180)
Przenieś klasę PhoneDeviceType z biblioteki Wearable Support Library do AndroidaX. Przeniesiona klasa została zmieniona na PhoneTypeHelper, która udostępnia metody pomocnicze do określania typu telefonu, z którym sparowany jest bieżący zegarek. Można jej używać tylko na urządzeniach do noszenia. (Ibd947)
Utwórz nową bibliotekę pomocy, która będzie zawierać klasy obsługujące interakcje między urządzeniami z Wear OS a telefonami. Początkowo zawiera klasy przeniesione z biblioteki pomocy Wearable. (I9deb4)
Przenieś klasę WatchFaceCompanion z Biblioteki pomocy dla urządzeń do noszenia do Androida X. Przeniesiona klasa została zmieniona na WatchFaceConfigIntentHelper, która udostępnia funkcje pomocnicze do określania identyfikatora i nazwy komponentu w aktywnościach konfiguracji tarczy zegarka na telefonie. Można jej też używać lokalnie do konfigurowania tarczy zegarka na urządzeniu do noszenia. (Ia455f)
Wear-Tooling-Preview
Wersja 1.0
Wersja 1.0.0
29 listopada 2023 r.
Publikacja androidx.wear:wear-tooling-preview:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
Funkcje w wersji 1.0.0
- Dodaj
WearDevicesdo listy prawidłowych urządzeń do noszenia, które mogą być używane do podglądu interfejsu.
Wersja 1.0.0-rc01
15 listopada 2023 r.
androidx.wear:wear-tooling-preview:1.0.0-rc01 jest publikowany bez zmian. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Wersja 1.0.0-beta01
18 października 2023 r.
androidx.wear:wear-tooling-preview:1.0.0-beta01 jest publikowany bez zmian. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Wersja 1.0.0-alpha01
23 sierpnia 2023 r.
Publikacja androidx.wear:wear-tooling-preview:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaj
WearDevicesdo listy prawidłowych urządzeń do noszenia, które można wykorzystać do podglądu interfejsu (Ib036e)
Widżety i tarcze zegarka Wear
Wersja 1.0
Wersja 1.0.0-alpha22
15 września 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha22 Wersja 1.0.0-alpha22 zawiera te zatwierdzenia.
Nowe funkcje
- Obiekt EditorSession subskrybuje teraz obserwatorów cyklu życia, więc nie musisz go już zamykać, gdy Twoja aktywność się kończy.
Zmiany w interfejsie API
- Klasy EditorSession i ListenableEditorSession używają teraz w przypadku zmiennych complicationSlotsState, ComplicationsPreviewData i ComplicationsDataSourceInfo interfejsów StateFlow Kotlin. (I761d9)
- EditorSession#userStyle jest teraz
MutableStateFlow<UserStyle>(I32ca9) - Funkcja EditorSession.createOnWatchEditorSession korzysta teraz z obserwatora cyklu życia i automatycznie zamyka się po wykryciu zdarzenia onDestroy. Dodatkowo
createOnWatchEditorSessionwymaga teraz tylko przekazania aktywności. Identyczne zmiany zostały też zastosowane w przypadku ListenableEditorSession. (Ic6b7f) - Konstruktor CustomValueUserStyleSetting został przywrócony jako część publicznego interfejsu API. (I2e69a)
UserStyledziedziczy teraz zMap<UserStyleSetting, UserStyleSetting.Option>, aMutableUserStyleSetting#putzgłasza wyjątek IllegalArgumentException, jeśli ustawienie nie znajduje się w schemacie lub jeśli opcja nie pasuje do ustawienia. (Iba40f)
Wersja 1.0.0-alpha21
1 września 2021 roku
Publikacja androidx.wear:wear-*:1.0.0-alpha21 Wersja 1.0.0-alpha21 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Wszystkie publiczne interfejsy API tarcz zegarka, klientów, edytorów i komplikacji używają teraz klasy java.time.Instant do określania czasu zamiast typu Long. W związku z tym minimalny poziom interfejsu API został zwiększony do 26. (I3cd48)
- Interfejsy API tarcz zegarka i komplikacji używają teraz niezmiennego obiektu ZonedDateTime zamiast obiektu Calendar. (I25cf8)
- Obiekty ComplicationSlot są teraz inicjowane za pomocą obiektu NoDataComplicationData, ComplicationSlot.complicationData zawsze ma wartość, a CanvasComplicationDrawable.complicationData nie może już mieć wartości null. (I4dfd6) Ogranicza to (ale nie eliminuje) migotanie widżetów podczas przełączania się między tarczami zegarka.
Wersja 1.0.0-alpha20
18 sierpnia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha20 Wersja 1.0.0-alpha20 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy do klasy ComplicationDataSourceInfo funkcję createFallbackPreviewData, której można użyć, gdy funkcja ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData zwraca wartość null. (I38c4d)
- Interfejs ComplicationDataSourceUpdateRequester został przekształcony w interfejs, aby umożliwić tworzenie atrap w testach jednostkowych. Konkretny obiekt ComplicationDataSourceUpdateRequester możesz utworzyć za pomocą metody ComplicationDataSourceUpdateRequester.create(). (I7da22)
- RenderParameters.pressedComplicationSlotIds został zastąpiony przez RenderParameters.lastComplicationTapDownEvents, który udostępnia nową klasę TapEvent zawierającą trójkę współrzędnych x i y kliknięcia w pikselach oraz sygnaturę czasową.
WatchFace.TapListener.onTapzostało zastąpione przezonTapEvent(@TapType tapType: Int, tapEvent: TapEvent). Dodatkowo usunięto elementInteractiveWatchFaceClient.displayPressedAnimation. (Id87d2) - Dodano adnotację dotyczącą jawnego wątkowania dla metody setImportantForAccessibility (I990fa).
- Typ ComplicationSlotBoundsType został przeniesiony do androidx-wear-watchface.ComplicationSlotBoundsType w wear/wear-watchface. (I09420)
- Dodaliśmy obsługę przekazywania identyfikatorów zasobów tekstowych do elementów UserStyleSetting i Options. Jest to obecnie zalecany sposób tworzenia tych obiektów. (I03d5f)
- Nałożono limity na maksymalny rozmiar schematu UserStyle. Ikony w schemacie nie mogą być większe niż 400 x 400 pikseli. (I3b65b)
- Dodaliśmy klasę MutableUserStyle, aby obsługiwać zmiany w instancjach UserStyle (I95a40).
- Zmieniliśmy nazwę
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClientnaListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient. (I64ce2) - Zmodyfikowaliśmy EditorState.previewComplicationsData, aby zawierał tylko dane włączonych komplikacji, i dodaliśmy
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS, które w przypadku przekazania dorenderWatchFaceToBitmaplubPreviewScreenshotParamspowoduje renderowanie z domyślnym czasem podglądu tarczy zegarka. (If7b3c) - Usunęliśmy z publicznego interfejsu API konstruktory UserStyleSetting, które przyjmują CharSequence. Zalecamy używanie konstruktorów, które wymagają identyfikatorów StringResource. (I8537b)
CurrentUserStyleRepository.UserStyleChangeListenerobsługuje teraz konwersję SAM. (I85989)
Wersja 1.0.0-alpha19
4 sierpnia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha19 Wersja 1.0.0-alpha19 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient, który udostępnia kodListenableFuturedlaWatchFaceMetadataClient.createWatchFaceMetadataClient. (I5fa37) UserStyleOption.getOptionForIdakceptuje terazUserStyleOption.Idzamiast tablicy bajtów. (I469be)- Podaj stałe
BooleanOption.TRUEiBooleanOption.FALSEoraz zabroń tworzenia instancji (I46e09). - Metody w wear-watchface-client, które mogą zgłaszać wyjątek RemoteException, zostały odpowiednio oznaczone. (Ib8438)
- Dla spójności zmieniliśmy nazwę
EditorSession.createOnWatchEditingSessionnacreateOnWatchEditorSession, acreateHeadlessEditingSessionnacreateHeadlessEditorSession. Zmieniliśmy też nazwy ich opakowań na guawę. (I1526b) EditorSessionjest teraz interfejsem, aListenableEditorSession.commitChangesOnClosejest prawidłowo delegowany. (I7dc3e)- Odrzucamy teraz wszystkie schematy stylów użytkownika, które mają ustawienia lub opcje z konfliktującymi identyfikatorami (Ic2715).
- Dodaliśmy przeciążoną metodę
UserStyle.get, która akceptujeUserStyleSetting.Id. (I2aa0f)
Wersja 1.0.0-alpha18
21 lipca 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha18 Wersja 1.0.0-alpha18 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Przenieśliśmy
ComplicationHelperActivitydo bibliotekiandroidx.wear:wear-watchface. (I39e76) - Aby zachować spójność i jasność,
ComplicationProviderzmieniliśmy nazwę naComplicationDataSource. Podobnie zmieniliśmy nazwy wszystkich klas, które w nazwie miały słowo „Provider”. (Iaef0b) - Element
CanvasComplication.isHighlightedzostał przeniesiony doRenderParameters.pressedComplicationSlotIds. Jest to krok w kierunku uczynieniaCanvasComplicationbezstanowym. Aby obsługiwać tę zmianę, funkcjaCanvasComplication.renderprzyjmuje teraz też parametrslotId, a do funkcjiGlesTextureComplicationprzekazujemy teraz parametrComplicationSlot. (I50e6e) - Dodaliśmy
headlessDeviceConfigdoEditorRequest. Jeśli ten parametr nie ma wartości null, służy do tworzenia instancji bez interfejsu graficznego, która obsługuje EditorSession, zamiast działać na instancji interaktywnej. Dzięki temu edytor może być wywoływany w przypadku tarczy zegarka, która nie jest obecnie używana. (I0a820) - Dodaliśmy eksperymentalny interfejs
WatchFaceMetadataClient, który umożliwia wydajne pobieranie statycznych metadanych tarczy zegarka, takich jakUserStyleSchemai stałe szczegóły dotycząceComplicationSlots. (I6bfdf) - Zmieniliśmy nazwę funkcji
CanvasRenderer.uiThreadInitna init. (I6fff9) - Dodaliśmy opcjonalny nowy parametr PreviewScreenshotParams do EditorRequest, który nakazuje EditorSession wykonanie zrzutu ekranu podglądu podczas zatwierdzania z tymi parametrami. Obraz podglądu jest widoczny w
EditorState.previewImage. (Ic2c16)
Poprawki błędów
- Deweloperzy nie muszą już dodawać ComplicationHelperActivity do własnego pliku manifestu. (I6f0c2)
Wersja 1.0.0-alpha17
30 czerwca 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha17 Wersja 1.0.0-alpha17 zawiera te zatwierdzenia.
Nowe funkcje
W przypadku języków
GlesRenderer,makeUiThreadContextCurrentimakeBackgroundThreadContextCurrentfunkcjerunUiThreadGlCommandsirunBackgroundThreadGlCommandszostały zastąpione funkcjamirunUiThreadGlCommandsirunBackgroundThreadGlCommands, które akceptują wartośćRunnable. Biblioteka zapewnia, że w danym momencie wykonywane jest tylko jedno polecenie GL.Aby ułatwić inicjowanie UiThread, dodaliśmy funkcję
CanvasRenderer.uiThreadInit, która jest wywoływana raz w UiThread przed wywołaniem renderowania. Dodaliśmy teżonRendererCreateddoCanvasComplication, co ułatwiaRendereriCanvasComplicationudostępnianie stanu.W celu uniknięcia wątpliwości zmieniliśmy nazwę
ComplicationnaComplicationSlot, acomplicationIdnacomplicationSlotIdlubcomplicationInstanceIdw zależności od zastosowania.
Zmiany w interfejsie API
- W celu uniknięcia wątpliwości zmieniliśmy nazwę
ComplicationnaComplicationSlot, acomplicationIdnacomplicationSlotIdlubcomplicationInstanceIdw zależności od zastosowania. Klasy korzystające z widżetów również zostały zmienione, np. klasa ComplicationsManager nosi teraz nazwę ComplicationSlotsManager. (I4da44) - W przypadku GlesRenderer funkcje
makeUiThreadContextCurrentimakeBackgroundThreadContextCurrentzostały zastąpione funkcjamirunUiThreadGlCommandsirunBackgroundThreadGlCommands, które akceptują parametrRunnable. Te funkcje są potrzebne tylko wtedy, gdy musisz wykonywać wywołania GL poza renderowaniem,runBackgroundThreadGlCommandsionUiThreadGlSurfaceCreated. Jest to wymagane, ponieważ w tym samym procesie może być wiele obiektów GlesRenderer, z których każdy ma własny kontekst, potencjalnie z różnych tarcz zegara. Dodatkowo dostęp do udostępnionego bieżącego kontekstu GL jest teraz zsynchronizowany. (I04d59) - Dodaliśmy funkcję
CanvasRenderer.uiThreadInit, która jest wywoływana raz w wątku interfejsu przed wywołaniem funkcji renderowania. Aby uniknąć niejasności w przypadku GlesRenderer, zmieniliśmy nazwyonGlContextCreatednaonBackgroundThreadGlContextCreatedionGlSurfaceCreatednaonUiThreadGlSurfaceCreated. (If86d0) HeadlessWatchFaceClient&InteractiveWatchFaceClientgetComplicationsSlotStatezmieniła nazwę nagetComplicationSlotsState. W językuComplicationSlot: nazwycreateRoundRectComplicationBuilder,createBackgroundComplicationBuildericreateEdgeComplicationBuilderzostały zmienione odpowiednio nacreateRoundRectComplicationSlotBuilder,createBackgroundComplicationSlotBuildericreateEdgeComplicationSlotBuilder. (Ib9adc)- Dodaliśmy do klasy CanvasComplication metodę onRendererCreated, która ułatwia udostępnianie stanu przez klasy Renderer i CanvasComplication. (I5e1ac)
Wersja 1.0.0-alpha16
16 czerwca 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha16 Wersja 1.0.0-alpha16 zawiera te zatwierdzenia.
Nowe funkcje
- Naprawiliśmy kilka błędów związanych z ostatnimi zmianami w modelu wątków, a także rozwiązaliśmy inne problemy z edytorem tarcz zegarka.
Poprawki błędów
- Zapobieganie błędowi NPE w
onComplicationProviderChooserResult(b/189594557) - Rozwiązywanie problemów z nieaktualnymi powierzchniami i funkcją drawBlack (b/189452267)
- Naprawienie problemu z wyścigiem w dostępie do
complicationsManager.watchState(b/189457893) - Naprawiono błąd dotyczący czasu działania wątku w tle (b/189445428).
- Rozwiązywanie problemów z Edytorem tarcz zegarka w przypadku urządzeń z Androidem w wersji starszej niż R (b/189126313)
- Nie aktualizuj parametrów bezpośredniego uruchamiania w przypadku zmian stylu edytora (b/187177307)
Wersja 1.0.0-alpha15
2 czerwca 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha15 Wersja 1.0.0-alpha15 zawiera te zatwierdzenia.
Nowe funkcje
Większość inicjowania tarczy zegarka odbywa się teraz w wątku w tle, ale po załadowaniu wszystkie operacje renderowania tarczy zegarka itp. są wykonywane w wątku interfejsu. Między ładowaniem a renderowaniem występuje bariera pamięci, więc większość tarcz zegarka nie wymaga specjalnych działań. Wyjątkiem mogą być tarcze zegarka korzystające z GLES, ponieważ kontekst jest specyficzny dla wątku, a my tworzymy 2 połączone konteksty, więc można przesyłać zasoby GL (np. tekstury i shadery) w wątku w tle i używać ich w wątku interfejsu.
Proces tworzenia tarcz zegarka podzieliliśmy na 3 funkcje: createUserStyleSchema, createComplicationsManager i createWatchFace. Zakładamy, że funkcje createUserStyleSchema i createComplicationsManager działają szybko, a funkcja createWatchFace może potrzebować trochę czasu na wczytanie zasobów. Wprowadziliśmy w tym celu funkcję WatchFaceControlClient.getDefaultProviderPoliciesAndType, która zwraca mapę identyfikatorów widżetów do DefaultComplicationProviderPolicies i domyślnego ComplicationType. Jest to szybsze niż tworzenie instancji bez interfejsu, ponieważ nie wymaga pełnej inicjalizacji tarczy zegarka w celu wykonania zapytania.
Komplikacje są teraz tworzone za pomocą klasy CanvasComplicationFactory, która umożliwia leniwe tworzenie elementów renderujących CanvasComplication.
Zmiany w interfejsie API
- Tekst
@TargetApizostał zastąpiony tekstem@RequiresApi. (I0184a, b/187447093, b/187447094) - Wprowadziliśmy
WatchFaceControlClient.getDefaultProviderPoliciesAndType, która zwraca mapę identyfikatorów widżetów do DefaultComplicationProviderPolicies i domyślnego ComplicationType. W miarę możliwości używana jest szybka ścieżka, która pozwala uniknąć pełnego tworzenia tarczy zegarka. W tym celu interfejs WatchFaceService API musiał zostać zmieniony. Dodano do niego 2 nowe metody: createUserStyleSchema i createComplicationsManager. Ich wyniki są przekazywane do metody createWatchFace. Oprócz tego komplikacje są teraz tworzone za pomocą klasy CanvasComplicationFactory, która umożliwia leniwe tworzenie elementów renderujących CanvasComplication. (Iad6c1) - Usunęliśmy MOST_RECENT_APP z SystemProviders. (I3df00)
- ObservableWatchData to teraz klasa zamknięta. (Ic940d)
- Funkcja CanvasComplicationFactory.create (która zwykle jest powiązana z operacjami wejścia/wyjścia) jest teraz wywoływana w wątku w tle w przypadku każdego widżetu przed rozpoczęciem renderowania w wątku interfejsu. Pomiędzy konstrukcją a renderowaniem występuje bariera pamięci, więc nie są wymagane żadne specjalne elementy pierwotne wątków. (Ia18f2)
- Tworzenie tarczy zegarka odbywa się teraz w wątku w tle, ale renderowanie jest wykonywane w wątku interfejsu. GlesRenderer obsługuje 2 połączone konteksty, aby to umożliwić. Wywołania WatchFaceControlClient.createHeadlessWatchFaceClient i WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient mogą zostać zakończone przed zakończeniem wywołania WatchFaceService.createWatchFace. Kolejne wywołania interfejsu API będą blokowane do czasu zakończenia inicjowania tarczy zegarka. (Id9f41)
- Wartości EXPANSION_DP i STROKE_WIDTH_DP nie są już widoczne w pliku api.txt. (I54801)
- W przypadku wystąpienia błędu funkcja EditorSession.createOnWatchEditingSession zgłasza wyjątek TimeoutCancellationException zamiast wysyłać sesję o wartości null. Dodatkowo wartość zwracana przez funkcje EditorRequest.createFromIntent i EditorSession.createOnWatchEditingSession jest teraz NonNull. (I41eb4)
Wersja 1.0.0-alpha14
18 maja 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha14 Wersja 1.0.0-alpha14 zawiera te zatwierdzenia.
Nowe funkcje
EditorSession.openComplicationProviderChooserzwraca teraz ChosenComplicationProvider, który zawiera identyfikator widżetuComplicationProviderInfoi pakiet Bundle zawierający dodatkowe informacje zwrócone przez selektor dostawców.- Ponadto stopniowo przenosimy kod do języka Kotlin, a większość interfejsu API tarczy zegarka jest teraz zdefiniowana w tym języku.
Zmiany w interfejsie API
- Właściwości
eglContextieglDisplayklasy GlesRenderer nie mogą już mieć wartości null. Wszelkie błędy GL są teraz zgłaszane za pomocąGlesRenderer.GlesException, a nie RuntimeExceptions. (Ib1005) - Przeszliśmy
androidx.wear.watchface.complications.rendering.ComplicationDrawablez Javy na Kotlin (Ibc3eb). - Przenieśliśmy
androidx.wear.watchface.complications.rendering.ComplicationStylez Javy na Kotlin (I3375e). - Dodaliśmy informacje o dostawcy widżetu dla każdego widżetu w ramach EditorSession. (I37f14)
- Rozszerzyliśmy wynik
EditorSession.openComplicationProviderChooser, aby uwzględnić informacje zwrócone przez wybraną. (Iead6d)
Wear Complications & Watchface w wersji 1.0.0-alpha13
5 maja 2021 roku
Publikacja androidx.wear:wear-*:1.0.0-alpha13 Wersja 1.0.0-alpha13 zawiera te zatwierdzenia.
Nowe funkcje
Tarcze zegarka mogą zawierać ważne elementy wizualne, które nie tylko pokazują czas i widżety. Aby zapewnić obsługę czytników ekranu, tarcza zegarka może teraz określać etykiety ContentDescriptionLabels ułatwień dostępu za pomocą właściwości additionalContentDescriptionLabels obiektu Renderer. Dodatkowo, aby kontrolować kolejność etykiet ContentDescriptionLabels, do widżetów dodano accessibilityTraversalIndex. Można to zmodyfikować za pomocą ComplicationsUserStyleSetting.
Aby zachęcić deweloperów do dokładnego rozważenia kwestii czytników ekranu, wprowadziliśmy obowiązkowe przekazywanie do konstruktorów pól
ShortTextComplicationData.Builder,LongTextComplicationData.BuilderiRangedValueComplicationData.BuildercontentDescription. Jeśli w przypadku parametrucontentDescriptionpodasz wartośćComplicationText.EMPTY, parametrcontentDescriptionzostanie automatycznie wygenerowany na podstawie tekstu i tytułu.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClientteraz zgłaszaServiceStartFailureException, jeśli tarcza zegarka zgłosi wyjątek podczas inicjowania. Ułatwia to diagnozowanie problemów podczas uruchamiania tarczy zegarka.
Zmiany w interfejsie API
- Dodaliśmy obsługę nazwy komponentu null w ComplicationProviderInfo, która jest potrzebna do obsługi starszych wersji Wear OS. (I744d2)
- Przeszliśmy z języka Java na język Kotlin w przypadku
androidx.wear.complications.SystemProviders. (Ia1f8b) - Ukryliśmy wszystkie klasy z publicznego interfejsu API, które znajdują się w pakiecie android.support.wearable.complications, i w razie potrzeby utworzyliśmy odpowiednie otoczki w AndroidzieX. (I7bd50)
- Zmieniliśmy nazwę metody w
TimeDifferenceComplicationText.BuilderzsetMinimumUnitnasetMinimalTimeUnit. (I20c64) - Wymagamy, aby w konstruktorze przekazywane były pola
ShortTextComplicationData.Builder,LongTextComplicationData.BuilderiRangedValueComplicationData.BuildercontentDescription. (I8cb69) - Zmieniliśmy nazwę funkcji ComplicationProviderService.onComplicationUpdate na onComplicationRequest i zamknęliśmy parametry id i type tej metody w danych ComplicationRequest. Odpowiedni odbiornik został zmieniony na ComplicationRequestListener, a jego metoda na ComplicationRequestListener.onComplicationData. (Iaf146)
- Usunęliśmy metodę
isActiveAtz funkcjiComplicationDatai zamiast niej udostępniliśmy polevalidTimeRange. To wywołanie metody można zastąpić wywołaniemvalidTimeRange.contains. (I65936) - Zmieniliśmy opis metody ComplicationProviderService.onComplicationActivated, aby przyjmowała ona wartość ComplicationType zamiast liczby całkowitej. (Idb5ff)
- Przeniesiono klasę ProviderUpdateRequester z Javy do Kotlina. (Ibce13)
- Metoda GlesRender.makeContextCurrent jest teraz publiczna. Kod tarczy zegarka może wymagać wywołań gl poza funkcjami renderowania i onGlContextCreated, a ponieważ może istnieć zarówno kontekst interaktywny, jak i bez interfejsu graficznego, konieczne jest wywołanie tej funkcji. (I8a43c)
- Funkcja WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient zgłasza teraz wyjątek ServiceStartFailureException, jeśli tarcza zegarka zgłosi wyjątek podczas inicjowania. Dodatkowo usługa WatchFaceService zgłasza teraz wyjątek, jeśli funkcja createWatchFace działa dłużej niż 6 sekund. (I59b2f)
- Usunęliśmy nieużywaną właściwość id z
GlesTextureComplication. (I28958) - Tarcza zegarka może teraz określać etykiety ContentDescriptionLabels ułatwień dostępu za pomocą właściwości
RendereradditionalContentDescriptionLabels. Oprócz kontrolowania kolejności etykiet ContentDescriptionLabels do komplikacji dodano accessibilityTraversalIndex. Można to zmodyfikować za pomocą elementu ComplicationsUserStyleSetting. (Ib7362) - Rozwiń dokumentację dotyczącą obsługi zdarzeń dotknięcia na tarczy zegarka. (Iaf31e)
Poprawki błędów
EditorSession.getComplicationsPreviewData()zwraca teraz mapę dla każdego, a nie tylko dla niepustych widżetów. W przypadku pustych widżetów używana jest instancja EmptyComplicationData. (I1ef7e)
Wear Complications & Watchface w wersji 1.0.0-alpha12
21 kwietnia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha12 Wersja 1.0.0-alpha12 zawiera te zatwierdzenia.
Nowe funkcje
Edytory tarcz zegarka muszą wyróżniać części tarczy, aby pokazać, który aspekt zegarka jest konfigurowany. Rozszerzyliśmy RenderParameters, aby umożliwić wyróżnianie stylów i widżetów. Jest nowa opcjonalna warstwa HighlightLayer, która ma być nakładana na tarczę zegarka z przezroczystością alfa (interfejsy API zrzutów ekranu mogą to zrobić za Ciebie lub udostępnić samą warstwę HighlightLayer, aby zapewnić maksymalną elastyczność). Załóżmy, że masz styl, który pozwala skonfigurować wygląd wskazówek zegarka. W takim przypadku moduł renderujący w funkcji renderHighlightLayer może narysować wokół nich kontur.
Aby zachęcić dostawców komplikacji do obsługi ułatwień dostępu, ustawiliśmy pole contentDescription w klasach PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder i SmallImageComplicationData.Builder jako obowiązkowy argument konstruktora. Dodano ComplicationTapFilter i Complication.createEdgeComplicationBuilder, aby obsługiwać widżety na krawędziach (rysowane wokół krawędzi ekranu). Renderowanie i testowanie widżetów na krawędziach zależy od tarczy zegarka. Testowanie trafień na krawędzi nie jest obsługiwane w edytorze reklam towarzyszących.
Zmiany w interfejsie API
- Dodano prefiks
PROVIDER_do stałych w SystemProviders. (I1e773) - Wymagamy, aby w konstruktorze przekazywać pole
contentDescriptiondlaPhotoImageComplicationData.Builder,MonochromaticImageComplicationData.BuilderiSmallImageComplicationData.Builder. (I9643a) - Nazwę konta usługi
ProviderInfoRetriever.requestPreviewComplicationDatazmieniono naretrievePreviewComplicationData. (I911ee) - Przeniesiono
ComplicationProviderServicez Javy do Kotlina. (I849f2) - Metoda
ComplicationProviderService.onBindjest teraz ostateczna (I39af5) - Przywróciliśmy interfejs
CanvasComplicationi przenieśliśmyCanvasComplicaitonDrawable,GlesTextureComplicationiComplicationHighlightRendererdowear-watchface-complications-rendering. (I84670) RenderParameterszostał przekształcony, aby obsługiwać rozszerzone renderowanie wyróżnień. Możesz teraz poprosić o wyrenderowanie wyróżnień dla stylów, a także wszystkich lub pojedynczych elementów. Dodatkowo klasy CanvasRenderer i GlesRenderer mają nową abstrakcyjną metodę renderHighlightLayer do renderowania dowolnego wyróżnienia żądanego przez edytor. Warstwa została zmieniona na WatchFaceLayer. (Ic2444)- Dodano obsługę
ComplicationTapFilteriComplication.createEdgeComplicationBuilder, aby obsługiwać widżety na krawędziach. Renderowanie i testowanie widżetów na krawędziach zależy od tarczy zegarka. Testowanie kliknięć nie jest obsługiwane w edytorach. (Ia6604) - W przypadku usług
DoubleRangeUserStyleSettingiLongRangeUserStyleSetting:defaultValue,maximumValueiminimumValuesą teraz właściwościami języka Kotlin. Dodatkowo usuniętoUserStyleSetting.Optionfunkcje takie jak toBooleanOption, toCoplicationOptions, toListOption i podobne. (I52899) - Dodaj rozmiar podbródka do właściwości urządzenia dostępnych na tarczy zegarka. (I76e1e)
- Konstruktor
ComplicationHighlightRendererakceptuje teraz parametryoutlineExpansionioutlineStrokeWidth. (I87009) ComplicationDrawable.getNoDataTextjest teraz częścią publicznego interfejsu API. (I00598)
Wersja 1.0.0-alpha11
7 kwietnia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha11 Wersja 1.0.0-alpha11 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejsy API tarcz zegarka zostały dopracowane. Większość zmian to proste zmiany nazw, ale
InteractiveWatchFaceWcsClientiInteractiveWatchFaceSysUiClientzostały połączone wInteractiveWatchFaceClient.
Zmiany w interfejsie API
- Pole ContentDescriptionLabel.text jest teraz obiektem ComplicationText, a nie obiektem TimeDependentText ze starej biblioteki pomocy dla urządzeń do noszenia. (I80c03)
SystemProviders.GOOGLE_PAYnie jest gwarantowane na wszystkich urządzeniach z Androidem R, więc zostało usunięte z listy. Nadal możesz korzystać z tego dostawcy za pomocąDefaultComplicationProviderPolicy(If01b5).- Dla zachowania spójności zmieniliśmy nazwę ComplicationUpdateCallback na ComplicationUpdateListener. (I61ec7)
- Mapa formatu przewodowego UserStyle została zmieniona na
Map<String, byte[]>, a dla wygody do publicznego interfejsu API dodano klasęUserStyleData, która jest teraz używana przez wear-watchface-client i wear-watchface-editor. Dodatkowo pole CustomValueUserStyleSetting.CustomValueOption.value ma teraz wartośćbyte[]zamiastString. (Iaa103) UserStyleSettingiUserStyleSetting.Optionużywają teraz odpowiednioUserStyleSetting.IdiUserStyleSetting.Option.Iddo przechowywania identyfikatorów zamiast ciągu znaków. (I63f72)- Nazwę konta usługi
InteractiveWatchFaceClient.SystemStatezmieniono naWatchUiState. (I6a4e0) InteractiveWatchFaceWcsClientiInteractiveWatchFaceSysUiClientzostały połączone, ponieważ trudno było wyjaśnić podział obowiązków (Iff3fa).- Nazwy wartości typu wyliczeniowego warstwy zostały zmienione w celu uniknięcia wątpliwości.
Layer#TOP_LAYERto terazLayer#COMPLICATIONS_OVERLAY, aLayer#BASE_LAYERto terazLayer#BASE(Ia144e) - Nazwa
UserStyleListenerzostała zmieniona naUserStyleChangeListener(I18524) - Nazwa elementu
UserStyleRepositoryzostała zmieniona naCurrentUserStyleRepository(I6ea53) - Nazwę konta usługi
InteractiveWatchFaceWcsClient.updateInstancezmieniono naupdateWatchfaceInstance. (I321dc) - Nazwy zdarzeń WatchFace TapType zostały zmienione, aby były zgodne ze zdarzeniami MotionEvents / Compose. (I0dfd0)
- Funkcja takeWatchfaceScreenshot została zmieniona na renderWatchFaceToBitmap, a funkcja takeComplicationScreenshot na renderComplicationToBitmap (Ie0697).
- Interfejs CanvasComplication został usunięty na rzecz otwartej klasy CanvasComplicationDrawable. (I1f81f)
- Element
WatcfaceControlServiceFactoryzostał usunięty z publicznego interfejsu API. (I1f8d3) - Zmieniliśmy nazwę
CanvasComplication.setDatanaCanvasComplication.loadData. (If1239) - Nazwę konta usługi
ComplicationsManager.bringAttentionToComplicationzmieniono nadisplayPressedAnimation. (Ic4297) WatchFaceService.createWatchFacema teraz adnotację@UiThread. (Ib54c2)- Zmieniono nazwę parametru CanvasComplicationDrawable, aby naprawić błąd. (I50dac)
- Dodaliśmy
HeadlessWatchFaceClient.toBundle()iHeadlessWatchFaceClient.createFromBundle, aby umożliwić wysyłanieHeadlessWatchFaceClientza pomocą AIDL. (I07c35) - Klasy HeadlessWatchFaceClient i InteractiveWatchFaceClient mają teraz interfejs ClientDisconnectListener i metodę isConnectionAlive(), które umożliwiają sprawdzenie, czy połączenie zostało z jakiegoś powodu przerwane (np. z powodu zamknięcia tarczy zegarka). (Ie446d)
- Funkcja
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsyncjest teraz funkcją zawieszania i została zmieniona nagetOrCreateInteractiveWatchFaceClient. (Ib745d) EditorState.commitChangesihasCommitChanges()noszą teraz nazwęshouldCommitChanges(). (I06e04)- Nazwa
previewComplicationDatazostała zmieniona napreviewComplicationsData, aby wskazywać, że na mapie znajduje się (zwykle) więcej niż 1 komplikacja. (I56c06) - Nazwa
InteractiveWatchFaceWcsClient.bringAttentionToComplicationzostała zmieniona nadisplayPressedAnimation, aby zachować spójność zComplicationsManager.displayPressedAnimation. (Ic9999) - Wszystkie instancje identyfikatora instancji tarczy zegarka zostały umieszczone w nowej klasie WatchFaceId (I45fdf).
- Właściwość
complicationStatezostała zmieniona nacomplicationsState, aby wskazać liczbę mnogą. (Ided07) - Usunęliśmy różne konwersje Binder wear-watchface-client, które nie powinny być potrzebne. (Icc4c0)
- Aby zachować spójność,
EditorServiceClientzostało zmodyfikowane tak, aby używać odbiorców zamiast obserwatorów. (Iec3a4) - Dodaliśmy do
InteractiveWatchFaceSysUiClientiWatchFaceControlClientkilka brakujących adnotacji@Px. (I3277a) - Aby zachować spójność, zmieniliśmy nazwę EditorObserverCallback na EditorObserverListener. (Ie572d)
- Właściwość EditorState.watchFaceInstanceId jest ograniczona do poziomu interfejsu API Androida R i nowszych i nie może już przyjmować wartości null. (Id52bb)
- Nazwę konta usługi
EditorSession.launchComplicationProviderChooserzmieniono naopenComplicationProviderChooser. (I9d441) - Nazwa funkcji
EditorSession.createOnWatchEditingSessionAsynczostała zmieniona nacreateOnWatchEditingSessioni jest to teraz funkcja zawieszania. (Id257b) - Dodano kilka brakujących adnotacji
@UiThreadwEditorSession. (I6935c) - Nazwę konta usługi
UserStyleSetting.affectsLayerszmieniono naaffectedLayers. (I6e22b)
Wersja 1.0.0-alpha10
24 marca 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha10 Wersja 1.0.0-alpha10 zawiera te zatwierdzenia.
Nowe funkcje
- Obecnie można tworzyć obiekty Open GL (np. tekstury) podczas wywołania WatchFaceService.createWatchFace, ponieważ GlesRenderer wymaga teraz jawnego wywołania initOpenGLContext, które można wykonać w funkcji createWatchFace.
Zmiany w interfejsie API
- Interfejs
IdAndComplicationDatabył nieco niezręczny i został usunięty z publicznego interfejsu API. Klasy i interfejsy, które go używały, zostały zmodyfikowane. (I4c928) - Zastąpiliśmy
ReferenceTimesymbolamiCountUpTimeReferenceiCountDownTimeReference, które są bardziej zrozumiałe. (Ib66c6) - Dodano brakujące adnotacje
@Pxi@ColorInt. (I9bbc3) - Pole
Complication.complicationConfigExtrasnie może mieć teraz wartości null i domyślnie przyjmuje wartośćBundle.EMPTY. (Iad04f) GlesRendererwymaga teraz, aby po zakończeniu budowy zadzwonić pod numerinitOpenGLContext. Ta funkcja była szczegółem wewnętrznym, ale teraz jest dostępna w publicznym interfejsie API, aby umożliwić wcześniejsze wywołania GL w funkcji createWatchFace. (I726c2)- Usunęliśmy
Complication.setRenderer, ponieważ nie powinno być potrzebne. (Ie992f) Complicaiton.setComplicationBoundsnie jest już częścią publicznego interfejsu API. Jeśli chcesz dostosować położenie widżetu, możesz to zrobić wComplicationsUserStyleSetting. (Ibd9e5)- Nazwę konta usługi
ComplicationsManager.TapCallback.onComplicationSingleTappedzmieniono naonComplicationTapped. (I3a55c) - Nazwę konta usługi
ComplicationOutlineRenderer.drawComplicationSelectOutlinezmieniono nadrawComplicationOutline. (I14b88)
Wersja 1.0.0-alpha09
10 marca 2021 r.
Publikacja androidx.wear:wear-complications-*:1.0.0-alpha09 i androidx.wear:wear-watchface-*:1.0.0-alpha09 Wersja 1.0.0-alpha09 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs między hostem WCS/SysUI a tarczą zegarka uległ zmianie. Edytor może teraz określić, czy zmiana stylu włączy czy wyłączy komplikację (włączona = initiallyEnabled plus wszelkie zastąpienia z ComplicationsUserStyleSetting). Umożliwia też
EditorService.closeEditorzdalne zamykanie edytora tarczy zegarka przez interfejs systemu w razie potrzeby. - Dodatkowo
InteractiveWatchFaceWcsClient.setUserStylez bardziej zaawansowanym poleceniemupdateInstance, które zmienia identyfikator instancji, ustawia styl i czyści komplikacje za jednym razem.
Zmiany w interfejsie API
- Do bibliotek tarcz zegarka dodano TraceEvents. (I1a141)
ComplicationStatema teraz nową właściwośćinitiallyEnabled, która jest przydatna do przewidywania konsekwencji zmiany stylów. (I8c905)- Zastąpiliśmy operatora
InteractiveWatchFaceWcsClient.setUserStylebardziej zaawansowanym poleceniemupdateInstance, które zmienia identyfikator instancji, ustawia styl i usuwa komplikacje. (Ife6f6) - Interfejsy API zrzutów ekranu WatchFaceClient nie kompresują już zrzutów ekranu, ponieważ było to powolne. Zamiast tego pozostawiamy wszelkie przetwarzanie końcowe wywołującemu. (Id35af)
- Możesz teraz zdalnie zamknąć edytor tarczy zegarka za pomocą ikony
EditorService.closeEditor. (Ic5aa4) - Dodano adnotacje dotyczące dopuszczalności wartości null (Ic16ed)
Wersja 1.0.0-alpha08
24 lutego 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha08 Wersja 1.0.0-alpha08 zawiera te zatwierdzenia.
Nowe funkcje
- Niektóre tarcze zegarka są zaprojektowane z myślą o jednym lub kilku konkretnych widżetach. Aby to umożliwić, dodaliśmy metodę Complication.Builder#setFixedComplicationProvider, która po ustawieniu wartości „true” uniemożliwia użytkownikowi zmianę widżetu w danym miejscu.
- Biblioteki tarcz zegarka są napisane w języku Kotlin i korzystają z korutyn (np. funkcji zawieszających). Użytkownikom Javy udostępniliśmy otoczki ListenableFuture, aby poprawić interoperacyjność w tych bibliotekach: wear/wear-watchface-guava, wear/wear-watchface-client-guava i wear/wear-watchface-editor-guava.
Zmiany w interfejsie API
- Usunęliśmy obsługę dwukrotnego kliknięcia w przypadku widżetów uruchamiających selektor dostawcy. Ta funkcja nie była powszechna w przypadku tarcz zegarka i utrudniała implementację interfejsu systemowego. (I3ef24)
- Metody ProviderInfoRetriever mogą zgłaszać wyjątek ServiceDisconnectedException, jeśli binder zostanie nieoczekiwanie zamknięty. (Ib2cc4)
- Od Androida 11 obowiązują ograniczenia dotyczące tego, kiedy można uruchamiać narzędzie ProviderChooser. Chcemy też, aby edytory były tworzone przy użyciu nowego interfejsu
wear-watchface-editor, dlatego usuwamy z publicznego interfejsu API klasę ComplicationHelperActivity. (Ib19c1) - Usunięcie statycznych metod ComplicationText na rzecz konstruktorów. (Ibe399)
- Wprowadziliśmy opakowania ListenableFuture z biblioteki Guava dla różnych zawieszonych metod biblioteki tarcz zegarka. (I16b2c)
- Aby zwiększyć przejrzystość interfejsu API, dodaliśmy do klasy RenderParameters drugi konstruktor, który nie wymaga koloru i może być używany z trybami warstwy innymi niż
LayerMode.DRAW_OUTLINED. (I497ea) - Wcześniej funkcja ListUserStyleSetting różniła się od pozostałych, ponieważ miała argument domyślny. Teraz wszystkie konstruktory podklas StyleSetting przyjmują wartość domyślną na końcu. (I9dbfd)
- Klasa CanvasComplication została zmodyfikowana, aby używać ukrytej metody, co ułatwia implementację podklasy (I5b321).
- Zrezygnowaliśmy z klasy EditorResult na rzecz nowej klasy EditorService i
EditorSession.broadcastState(), aby przesyłać strumieniowo aktualizacje do obserwatora (zwykle SysUI). (Ic4370) - Niektóre tarcze zegarka są oparte na konkretnym widżecie, który jest ich integralną częścią i nie może być skonfigurowany przez użytkownika. Aby to umożliwić, dodaliśmy
Complication.Builder#setFixedComplicationProvider. (I4509e) - W przypadku EditorRequest podawana jest teraz nazwa pakietu zamiast ComponentName, ponieważ wyszukiwanie nazwy klasy edytora było niewygodne dla interfejsu systemowego, a tak naprawdę potrzebujemy tylko nazwy pakietu. (Ib6814)
Wersja 1.0.0-alpha07
10 lutego 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha07 Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
- WatchFaceService.createWatchFace to teraz funkcja zawieszająca, co oznacza, że tarcza zegarka nie musi już blokować wątku interfejsu podczas oczekiwania na operacje wejścia-wyjścia. Podobnie jak wear-watchface-editor i wear-complications-data
Zmiany w interfejsie API
- Usuń klasę PhotoImage i użyj bezpośrednio klasy Icon. (I8a70b)
- Udostępnia validTimeRange w obiekcie ComplicationData. (I91366)
- Uściślij atrybuty podobne do obrazów. (I81700)
- Moduły wear-watchface-editor i wear-complications-data zostały przekształcone tak, aby zamiast korutyn używać funkcji zawieszania. Wkrótce pojawią się otoki zgodne z Rx Java i Future. (If3c5f)
- Interfejs ProviderInfoRetriever zgłasza teraz wyjątek PreviewNotAvailableException, jeśli funkcja requestPreviewComplicationData nie może zwrócić danych podglądu z powodu problemów z połączeniem lub braku obsługi interfejsu API. (I4964d)
- Funkcja WatchFaceControlService::createWatchFaceControlClient jest teraz funkcją zawieszoną, a funkcja getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient nazywa się teraz getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync i zwraca wartość
Deferred<InteractiveWatchFaceWcsClient>. Wkrótce pojawią się otoczki zgodności RX Java i Future. (I5d461) - Zmień nazwę
CATEGORY_PROVIDER_CONFIG_ACTIONnaCATEGORY_PROVIDER_CONFIG. (I7c068) - Funkcja createOnWatchEditingSession jest obecnie zawieszona, ponieważ tarcza zegarka czasami jest dostępna dopiero po rozpoczęciu działania edytora. (Ida9aa)
- Funkcja WatchFaceService.createWatchFace jest teraz funkcją zawieszającą, która umożliwia asynchroniczną inicjację. Wcześniej trzeba było blokować wątek główny. (If076a)
- Klasa UserStyle ma teraz operator tablicy, a do klasy UserStyle.Option dodaliśmy pomocnicze funkcje rzutowania. (I35036)
- Usunęliśmy błąd marshallingu w przypadku formatów przewodowych UserStyle, który powodował zmiany w niektórych niestabilnych ukrytych interfejsach API. (I8be09)
- Dodaliśmy ustawienie CustomValueUserStyleSetting, które umożliwia przechowywanie w ustawieniu UserStyle pojedynczego ciągu znaków specyficznego dla aplikacji. Domyślne edytory tarcz zegarka zignorują tę wartość. (Ic04d2)
- W przypadku starszych wersji Androida WearOS, których nie możemy zaktualizować, identyfikator InstanceID nie jest przekazywany w dodatkach do intencji. Aby to umożliwić, zezwalamy teraz na wartość null w przypadku identyfikatora InstanceID. (Id8b78)
- EditorRequest zawiera teraz nazwę komponentu edytora, która jest ustawiana jako komponent w funkcji WatchFaceEditorContract.createIntent (I3cd06).
- Element Watchface EditorResult zawiera teraz podgląd ComplicationData, aby umożliwić wywołującemu zrobienie zrzutu ekranu tarczy zegarka po edycji. (I2c561)
Poprawki błędów
- Dodano zastąpienia toString() do klas UserStyle, UserStyleSetting i UserStyleSchema, co ułatwia pracę z tymi klasami. (I9f5ec)
Wersja 1.0.0-alpha06
27 stycznia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
- Wprowadziliśmy nową bibliotekę wear/wear-watchface-editor, która umożliwia deweloperom tarcz zegarka, a potencjalnie także producentom OEM, tworzenie edytora stylów i widżetów. Interfejs SysUI wyśle do tarczy zegarka intencję, która użyje nowej klasy EditorSession, aby uzyskać dostęp do szczegółów tarczy zegarka i zarejestrować wynik za pomocą Activity.setWatchRequestResult. W tym celu dodaliśmy metodę ProviderInfoRetriever.requestPreviewComplicationData, która umożliwia edytorom tarcz zegarka wysyłanie próśb o dane widżetu podglądu. Zaletą podglądu ComplicationData jest to, że w przeciwieństwie do danych na żywo nie musisz się martwić wyświetlaniem okien dialogowych z prośbą o uprawnienia podczas renderowania edytora (pamiętaj, że jeśli użytkownik wybierze dostawcę z uprawnieniami, nadal będzie proszony o ich przyznanie).
Zmiany w interfejsie API
- Interfejs ComplicationProviderInfo ma teraz pole ComponentName dostawcy. Obsługa tego pola zostanie dodana do WearOS w późniejszym terminie, a do tego czasu będzie ono miało wartość null. (Id8fc4)
- Dodaliśmy metodę ProviderInfoRetriever.requestPreviewComplicationData, która umożliwia edytorom tarcz zegarka wysyłanie próśb o wyświetlenie podglądu danych widżetów. Jest to przydatne, ponieważ aktywne widżety mogą wymagać uprawnień, a teraz możesz wyświetlać dane podglądu widżetów, które nie są aktywne. (I2e1df)
- ComplicationManager jest teraz opcjonalnym parametrem konstruktora WatchFace, a argumenty zostały zmienione, aby to umożliwić. (I66c76)
- Dodaliśmy opcjonalny pakiet do widżetów, który po ustawieniu jest łączony z intencją wysyłaną w celu uruchomienia aktywności wyboru dostawcy. (Ifd4ad)
- Dodaliśmy nową
wear-watchface-editorbibliotekę, która obsługuje edytory hostowane na tarczy zegarka i w interfejsie systemowym. SysUI uruchomi te edytory, wysyłając intencję. Usługa aktywności tarczy zegarka może używać nowej klasy EditorSession, aby uzyskiwać dostęp do szczegółów tarczy zegarka i rejestrować wynik za pomocą Activity.setWatchRequestResult. (I2110d) - LayerMode.DRAW_HIGHLIGHTED ma teraz nazwę LayerMode.DRAW_OUTLINED, a RenderParameters.highlightComplicationId ma teraz nazwę RenderParameters.selectedComplicationId. Ten parametr rysuje wyróżnienie na określonym elemencie, a także jego kontur. (I90a40)
- Obiekt Future funkcji WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient może teraz zwracać wyjątek ServiceStartFailureException, jeśli usługa zostanie zamknięta podczas oczekiwania na utworzenie tarczy zegarka. (I0f509)
- EditorSession.complicationPreviewData to teraz ListenableFuture, ponieważ pobieranie tych danych jest procesem asynchronicznym. (Iead9d)
Poprawki błędów
- Usuwamy nieużywane pola z elementu ComplicationOverlay, pozostawiając włączone pole enabled i pole complicationBounds. (I17b71)
Wersja 1.0.0-alpha05
13 stycznia 2021 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
Tarcze zegarka często obsługują wiele konfiguracji widżetów z różną liczbą wyświetlanych widżetów. Aby ułatwić konfigurację, obsługujemy teraz początkowo wyłączone widżety, wywołując metodę setEnabled(false) w konstruktorze. Można je później włączyć za pomocą ustawienia ComplicationsUserStyleSetting.
Zmiany w interfejsie API
- Klasa ComplicationHelperActivity akceptuje teraz wartość
Collection<ComplicationType>zamiast tablicy liczb całkowitych, co ułatwia jej używanie. (I1f13d) - Funkcja
ProviderInfoRetriever.retrieveProviderInfozwraca teraz prawidłową wartośćListenableFuture<ProviderInfo[]>. (If2710) - Możesz teraz utworzyć początkowo wyłączony widżet, wywołując metodę setEnabled(false) w obiekcie Builder. (Idaa53)
- Klasa WatchFaceState ma teraz właściwość isHeadless, która ma wartość true tylko w przypadku instancji bez interfejsu. (Ifa900)
- Klasa ComplicationDrawable opcjonalnie obsługuje teraz synchroniczne wczytywanie elementów rysowalnych. Jest on używany przez interfejsy API zrzutów ekranu. (I34d4a)
Wersja 1.0.0-alpha04
16 grudnia 2020 roku
Publikacja androidx.wear:wear-*:1.0.0-alpha04 Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- Biblioteka tarcz zegarka na urządzenia z Wear OS obsługuje teraz ustawianie granic według typu. Możesz np. przełączyć się na szeroką ramkę ograniczającą w przypadku ComplicationType.LONG_TEXT, a w przypadku innych typów używać mniejszej ramki ograniczającej.
Zmiany w interfejsie API
- Widżety korzystają teraz z elementu ComplicationBounds, który zawiera element
Map<ComplicationType, RectF>, aby obsługiwać rozmiary poszczególnych typów widżetów. (I1ebe7) - RenderParameters umożliwia teraz określanie odcienia podświetlenia do użycia na zrzutach ekranu. (Iff42b)
- Z wyjątkiem granic do modyfikowania widżetów musisz teraz używać ComplicationsUserStyleSetting. Dzięki temu system operacyjny będzie zawsze zsynchronizowany. (I8dc5d)
- Renderowanie jest teraz klasą zamkniętą. Oznacza to, że klasy CanvasRenderer i GlesRenderer są teraz klasami wewnętrznymi klasy Renderer. (Iab5d4, b/173803230)
- Metoda CanvasComplicationDrawable.drawHighlight została zmieniona na drawOutline. W przypadku ObservableWatchData brakuje teraz kilku adnotacji UiThread. Stan ekranu został całkowicie usunięty ze stanu zegarka. (If1393)
- Minimalny poziom API dla tarcz zegarka to teraz 25. Uwaga: obsługa sprzętowego obszaru rysowania wymaga interfejsu API na poziomie 26 lub wyższym. (Ic9bbd)
- Klasa InteractiveWatchFaceWcsClient ma teraz funkcję pomocniczą getComplicationIdAt. (I05811)
- Poziom interfejsu API dla wear-watchface-client został obniżony do 25, ale interfejsy API zrzutów ekranu wymagają poziomu API 27. (Id31c2)
Poprawki błędów
- W klasie ComplicationState udostępniamy teraz bieżący typ ComplicationType obiektu ComplicationData widżetu. (I9b390)
- Klasa InteractiveWatchFaceWcs ma teraz metodę `bringAttentionToComplication`, która umożliwia krótkie wyróżnienie określonego elementu. (I6d31c)
InteractiveWatchFaceWcsClient#setUserStylema teraz przeciążenie akceptujące Map<string, string="">, co może pozwolić uniknąć dodatkowej podróży w ramach komunikacji międzyprocesowej niezbędnej do utworzenia UserStyle. (I24eec)</string,>
Wersja 1.0.0-alpha03
2 grudnia 2020 r.
Publikacja androidx.wear:wear-*:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
Klasa Complication ma teraz właściwość compicationData, która umożliwia tarczom zegarka obserwowanie zmian w ComplicationData. Dzięki temu można zmieniać wymiary widżetu w zależności od jego typu.
Zmienne liczby klatek na sekundę są teraz obsługiwane przez przypisanie do Renderer.interactiveDrawModeUpdateDelayMillis. W przypadku tarcz zegarka, które co sekundę odtwarzają krótkie animacje, może to przynieść znaczne oszczędności energii, ponieważ zegarek przechodzi w stan uśpienia, gdy nie jest wyświetlana animacja.
Zmiany w interfejsie API
- Nazwa
BACKGROUND_IMAGEzostała zmieniona naPHOTO_IMAGEwraz z powiązanymi zajęciami. Ten typ komplikacji nie jest używany wyłącznie w przypadku tła, dlatego zmieniliśmy jego nazwę. (I995c6) - Klasa DefaultComplicationProviderPolicy jest prawidłowo oznaczona adnotacjami IntDef. (I3b431)
- Ukryta klasa TimeDependentText nie jest już udostępniana za pomocą ContentDescriptionLabel. Zamiast tego dodajemy akcesor, który umożliwia pobieranie tekstu w określonym czasie. (Ica692)
- Konstruktor ObservableWatchData jest teraz wewnętrzny. (I30121, b/173802666)
- Widżet ma teraz compicationData, co umożliwia tarczom zegarka obserwowanie zmian w ComplicationData. Widżet ma też nowe wywołanie isActiveAt, które może służyć do sprawdzania, czy w podanym czasie należy coś renderować. (Ic0e2a)
- Pusty znak
SharedMemoryImagenie jest już dostępny w publicznym interfejsie API. (I7ee17) WatchFace.overridePreviewReferenceTimeMillisma teraz adnotację IntRange, a funkcje pobierające i ustawiające mają spójne nazwy. (Ia5f78)Complication.Builderjest teraz tworzony za pomocąComplication.createRoundRectComplicationBuilderlubComplication.createBackgroundComplicationBuilderw celu uniknięcia wątpliwości (I54063)- Dodano interfejs WatchFace.TapListener, który umożliwia obserwowanie przez tarczę zegarka kliknięć nieużywanych przez widżety. (Ic2fe1, b/172721168)
- Tarcza zegarka obsługuje teraz zmienne liczby klatek na sekundę, które można przypisać do
Renderer.interactiveDrawModeUpdateDelayMillis. Może to pomóc wydłużyć czas pracy baterii, ponieważ nie będzie ona działać, gdy nie będzie animacji. (I707c9) - Klasa WatchFace.Builder nie jest już potrzebna, a metody invalidate() i interactiveUpdateRateMillis zostały przeniesione do klasy Renderer. (I329ea)
- Aby poprawić współdziałanie z Java, zmieniliśmy nazwy metod pobierających wartości właściwości logicznych w klasie WatchState (I6d2f1).
- W celu zachowania spójności zmieniliśmy nazwy TapListener na TapCallback i InvalidateCallback na InvalidateListener. (I9414e)
- Opcje stylu tarczy zegarka Wear 2.0 zostały przeniesione do osobnej klasy, aby były bardziej przejrzyste. Metody ustawiające WatchFace.Builder mają teraz symetryczne metody pobierające klasy WatchFace. (Iefdfc)
- Dodano InteractiveWatchFaceWcsClient i
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient, które pobierają istniejącą instancję lub tworzą ją po połączeniu usługi tapety i utworzeniu silnika. (Id666e) - WatchFaceControlClient to teraz interfejs, który umożliwia testom jego symulowanie. (I875d9)
- Klasy HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl i InteractiveWatchFaceWcsClient są teraz interfejsami, co ułatwia testowanie. (I7cdc3)
- Dodano adnotacje do metod w
wear-watchface-complications-rendering(I0d65c)
Poprawki błędów
- Usunięcie kształtu ekranu z DeviceConfig, który duplikował
android.content.res.Configuration#isScreenRound()(Ifadf4) - Zmieniono
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient, aby akceptowaćMap<String, String>zamiastUserStyle, ponieważ trudno jest utworzyćUserStylebez znajomości schematu, który można uzyskać dopiero po utworzeniu klienta. (Iea02a) - Popraw
InteractiveWatchFaceWcsClient, aby używaćComplicationStatezamiast formatu przewodowego. (Icb8a4) UserStyleSettingsjest teraz klasą zamkniętą, ponieważ edytory tarcz zegarka rozpoznają tylko wbudowane klasy. (I2d797)
Wersja 1.0.0-alpha02
11 listopada 2020 roku
Publikacja androidx.wear:wear-*:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
ComplicationDetailsto terazComplicationState. Została ona prawidłowo opakowana, a użycie obsługi urządzeń do noszenia@ComplicationData.ComplicationTypezostało przeniesione do androidxComplicationType. (I4dd36)- Dodaj opcjonalny parametr
highlightedComplicationIddo RenderParameters, który umożliwia żądanie wyróżnienia pojedynczego elementu na zrzutach ekranu. (I66ce9) ComplicationProviderService– aby zapewnić spójność, używaj nowego interfejsu API komplikacji stylu (Id5aea).getPreviewReferenceTimeMillispobiera teraz czasy odniesienia z usługiDeviceConfig. (I779fe)- Uproszczenie interfejsu Renderer API. Zamiast tego można użyć
SurfaceHolder.Callbackdo obserwowania zmian. (I210db) CanvasComplicationRenderernie rozciąga się odRenderer, zmieniamy jego nazwę w celu uniknięcia wątpliwości. (Ibe880)
Poprawki błędów
- Pierwsza wersja modelu
androidx.wear:wear-watchface-client(I1e35e) - Zmieniono nazwę
GlesTextureComplication#rendererw celu uniknięcia wątpliwości (Ib78f7) - Zmiana nazwy
StyleCategorynaStyleSettingw celu uniknięcia wątpliwości (I488c7) - Dodanie
UserStyleSchemaw celu uproszczenia interfejsu API (If36f8)
Wersja 1.0.0-alpha01
28 października 2020 r.
Publikacja androidx.wear:wear-complications-*:1.0.0-alpha01 i androidx.wear:wear-watchface-*:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Usunięto niektóre elementy, które nie miały być dostępne w publicznym interfejsie API. (I41669)
- Utwórz bibliotekę
androidx.wear:wear-complications-provider. (I77f1f) - ComplicationsUserStyleCategory to nowa zalecana kategoria do konfigurowania widżetów (I96909).
- Dodaj interfejs wear-complication-data API. (I7c268)
- Funkcje zwracające wartości logiczne powinny mieć przedrostek „is” zamiast „get” (If36ff).
- Zgodnie z zaleceniami dotyczącymi interfejsu API należy unikać używania chronionych elementów, dlatego ta klasa została zmodyfikowana tak, aby przyjmować parametry za pomocą konstruktora. (I61644)
- Zmień nazwę setBackgroundComplication w celu uniknięcia wątpliwości. (I96fe3)
- Używanie właściwości Kotlin dla ComplicationDrawable isHighlighted i danych (I4dcc8)
- Zamiast ComplicationRenderer.InvalidateCallback dodajemy Complication#invalidate() (I4f4c6).
- Te interfejsy API są wycofywane w bibliotece WearableSupport i zostaną tu usunięte. (Ib425c)
- Zmieniono nazwy niektórych metod narzędzia do tworzenia tarcz zegarka, aby podkreślić ich charakter związany z Wear 2.0. (Idb775)
- Pierwsza wersja beta interfejsu API dla wear/wear-watchface (Id3981)
- Pierwsza śledzona wersja interfejsu API. (Ie9fe6)
- Prawidłowe ukrywanie ComplicationDrawable.BorderStyle IntDef i przenoszenie do ComplicationStyle w celu zachowania spójności. (I27f7a)
- Dodanie brakujących adnotacji do metod ComplicationStyle (I838fd)
- Ta biblioteka nie ma publicznego interfejsu API (I88e2b).
- Wszystkie klasy opcji kategorii stylu są teraz prawidłowo ostateczne. (Ib8323)
- Pierwsza śledzona wersja interfejsu API. (I27c85)
Poprawki błędów
- Zmieniliśmy klasę ComplicationProviderService, dodając do niej jawną metodę getComplicationPreviewData. (I4905f)
- Sprawdzanie API pod kątem brakującego elementu MissingGetterMatchingBuilder jest włączone w przypadku androidx (I4bbea, b/138602561).
- Zmień nazwę wear-complications-rendering. (Ifea02)
- Wyświetlane nazwy kategorii stylu są teraz ciągami znaków (I28990)
- Zastąpienie opcji Zastąp nakładką, aby dopasować ją do obecnych konwencji nazewnictwa motywów i stylów. (I4fde9)
- Zmieniono nazwę UserStyle#getOptions w celu uniknięcia wątpliwości. (I695b6)