Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.Widget
androidx.wear.Widget.szuflada
(Zapoznaj się z dokumentacją do wszystkich pakietów ubrań)
Ta tabela zawiera wszystkie artefakty w grupie androidx.wear
.
Artefakt | Wersja stabilna | Kandydat do wydania | Wersja Beta | Wydanie alfa |
---|---|---|---|---|
Wear | 1.3.0 | - | - | 1.4.0-alfa01 |
Wear-input | 1.1.0 | - | - | 1.2.0-alfa02 |
testowanie-wejściowe- Wear | 1.1.0 | - | - | 1.2.0-alfa02 |
zużywana | 1.0.0 | - | - | 1.1.0-alfa01 |
interakcje na Wear telefon | 1.0.1 | - | - | 1.1.0-alfa04 |
interakcje na Wear-remote | 1.0.0 | - | 1.1.0-beta01 | - |
Deklarowanie zależności
Aby dodać zależność w Wear, musisz dodać repozytorium Google Maven do swojego w projektach AI. Zapoznaj się z repozytorium Google Maven. .
Dodaj zależności artefaktów, których potrzebujesz w pliku build.gradle
aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.wear:wear:1.3.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.1.0" implementation "androidx.wear:wear-input-testing:1.1.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.0.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.0.1" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.0.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.1.0") implementation("androidx.wear:wear-input-testing:1.1.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.0.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.0.1") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.0.0") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli odkryjesz nowe problemy jak ulepszyć tę bibliotekę. Przyjrzyj się istniejące problemy w tej bibliotece, zanim utworzysz nową. Możesz zagłosować nad istniejącym problemem przez klikając przycisk gwiazdki.
Zobacz dokumentację narzędzia Issue Tracker. .
Wear Core w wersji 1.0
Wersja 1.0.0-alpha01
29 maja 2024 r.
Usługa androidx.wear:wear-core:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy nową klasę
WearApiVersionhelper
, aby wspomóc sprawdzanie zgodności z interfejsem API środowiska wykonawczego na Wear. Klienty mogą sprawdzić zgodność, używając tej statycznej klasy pomocniczej i podanej metody (#isApiVersionAtLeast(VERSION)
).
Wersja testowa narzędzi na Wear 1.0
Wersja 1.0.0
29 listopada 2023 r.
Usługa androidx.wear:wear-tooling-preview:1.0.0
została zwolniona. Wersja 1.0.0 zawiera te zatwierdzenia.
Funkcje w wersji 1.0.0
- Dodaj
WearDevices
, aby wyświetlić listę prawidłowych urządzeń do noszenia, których można używać do wyświetlania podglądu interfejsu.
Wersja 1.0.0-rc01
15 listopada 2023 r.
Pakiet androidx.wear:wear-tooling-preview:1.0.0-rc01
został udostępniony bez zmian. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Wersja 1.0.0-beta01
18 października 2023 r.
Pakiet androidx.wear:wear-tooling-preview:1.0.0-beta01
został udostępniony bez zmian. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Wersja 1.0.0-alpha01
23 sierpnia 2023 r.
Usługa androidx.wear:wear-tooling-preview:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaj
WearDevices
, aby wyświetlić listę prawidłowych urządzeń do noszenia, których można używać do wyświetlania podglądu interfejsu (Ib036e)
Wear w wersji 1.4
Wersja 1.4.0-alpha01
15 listopada 2023 r.
Usługa androidx.wear:wear:1.4.0-alpha01
została zwolniona. Wersja 1.4.0-alfa01 zawiera te zatwierdzenia.
Poprawki błędów
- Wyśrodkuj ikonę
ConfirmationOverlay
w pionie, gdy nie ma wiadomości. (I496d8)
Wear w wersji 1.3
Wersja 1.3.0
9 sierpnia 2023 r.
Usługa androidx.wear:wear:1.3.0
została udostępniona bez zmian od 1.3.0-rc01
. Wersja 1.3.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.2.0
- Przenieś
AmbientModeSupport
, aby korzystać zLifecycleObserver
. ZastąpAmbientModeSupport
na rzecz nowych klas uwzględniających cykl życia. - Zaktualizuj aplikację
ConfirmationOverlay
, dodając nowe ikony/układ, czcionki i dane dotyczące czcionek - W celu poprawienia błędów podczas korzystania z interfejsu
FragmentContainerView
obiektSwipeDismissTransitionHelper
został zaktualizowany do używania elementu rysowanego w tle zamiast drugiego elementuView
- Animacja
SwipeDismissFrameLayout
została zaktualizowana, by była zgodna z implementacjami na platformie Wear i w Wear Compose. SwipeDismissFrameLayout
poprawka błędu pozwalającego uniknąć przypadkowego zamknięcia fragmentów z przesunięciem w pionieArcLayout
obsługuje teraz wagi rozwinięcia, które działają podobnie jak zwykłe wagi układu.- Wesprzyj kanał
layoutDirection
w:ArcLayout
Wersja 1.3.0-rc01
21 czerwca 2023 r.
Usługa androidx.wear:wear:1.3.0-rc01
została udostępniona bez zmian od 1.3.0-beta01
. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.
Wersja 1.3.0-beta01
7 czerwca 2023 r.
Usługa androidx.wear:wear:1.3.0-beta01
została zwolniona. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zaktualizowano
AmbientLifecycleObserver
po otrzymaniu opinii. NazwaAmbientLifecycleObserverInterface
została zmieniona naAmbientLifecycleObserver
, a instancję można uzyskać, wywołując funkcjęAmbientLifecycleObserver(...)
. ElementisAmbient
został przeniesiony jako pole, a nie metoda. (I84b4f)
Poprawki błędów
- Dodanie sprawdzania o wartości null do obsługi przypadków, gdy widok nadrzędny jest pusty podczas resetowania wersji alfa i tłumaczenia w interfejsie
SwipeToDismiss
. (Ib0ec7).
Wersja 1.3.0-alpha05
19 kwietnia 2023 r.
Usługa androidx.wear:wear:1.3.0-alpha05
została zwolniona. Wersja 1.3.0-alfa05 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Przenieś
AmbientModeSupport
, aby korzystać zLifecycleObserver
. WycofajAmbientModeSupport
na rzecz nowych klas uwzględniających cykl życia. (I1593B)
Poprawki błędów
- Aby naprawić błędy podczas korzystania z elementu
FragmentContainerView
, zaktualizuj metodę rysowania w tle wSwipeDismissTransitionHelper
, aby używać elementów rysowalnych zamiast widoku. (I851cd)
Wersja 1.3.0-alfa04
25 stycznia 2023 r.
Usługa androidx.wear:wear:1.3.0-alpha04
została zwolniona. Wersja 1.3.0-alfa04 zawiera te zatwierdzenia.
Poprawki błędów
- Zaktualizowaliśmy animację w
SwipeDismissFrameLayout
, by była zgodna z implementacjami na platformie Wear i w Wear Compose. (I7261b)
Wersja 1.3.0-alfa03
24 sierpnia 2022 r.
Usługa androidx.wear:wear:1.3.0-alpha03
została zwolniona. Wersja 1.3.0-alfa03 zawiera te zatwierdzenia.
Nowe funkcje
ArcLayout
obsługuje teraz wagi rozwinięcia, które działają podobnie jak zwykłe wagi 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. Dołożyliśmy wszelkich starań, abyMaxAngleDegrees
uwzględniać tę zasadę podczas rozwijania elementów podrzędnych za pomocą wag. Na przykład: można by zaciśnąć łuk w przypadku kilku elementów podrzędnych o wadze pod kątem 90 stopni, a uwzględnia to również przestrzeń zajmowaną przez wszystkie nierozwinięte elementy.
Zmiany interfejsu API
- Do
ArcLayout.LayoutParams
dodaliśmy wagę, dzięki czemu widżet rozwija się, aby wypełnić dostępne miejsce. Jeśli jest więcej niż 1 widżet, jego udział w dostępnym miejscu jest proporcjonalny do ich wagi. Dodaliśmy teżArcLayout.setMaxAngleDegrees
, dzięki czemu możesz na przykład ograniczyć rozwinięcie do 90 stopni (nie ma to wpływu na układ żadnych widżetów podrzędnych o stałym rozmiarze). Ostatnia funkcjaArcLayout.Widget
ma teraz atrybutsetSweepAngleDegrees
, który pozwala funkcjiArcLayout
przekazywać widżetowi wartość inną niż zero. (I75f24) - Zaktualizowano możliwość odrzucania wartości null etykiety
setColorFilter
(I99ddf, b/236498063)
Wersja 1.3.0-alfa02
23 lutego 2022 r.
Usługa androidx.wear:wear:1.3.0-alpha02
została zwolniona. Wersja 1.3.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Pomoc
layoutDirection
w domenieArcLayout
(I14d49) - Ulepszona wiadomość z opisem treści dla ConfirmOverlay (I0fdf8)
- Zaktualizuj
ConfirmationOverlay
, dodając nowe ikony/układ. (If5b54).
Poprawki błędów
- Dodano reguły ProGuard, które gwarantują zachowanie kodu związanego z dźwiękiem (Idaa10)
- Unikaj przypadkowego zamknięcia fragmentów w SlideCloseFrameLayout (przesuwanie w pionie) za pomocą przesuwania w pionie (Idb6d8).
- Naprawianie nakładki confirmationOverlay, gdy nie pojawia się komunikat (I63e6f)
Treści tłumaczone przez użytkowników zewnętrznych
- Dae Gyu LEE (Samsung) – unikaj przypadkowego zamknięcia fragmentów w SamsungFrameLayout przy użyciu przesuwania w pionie (Idb6d8).
Wersja 1.3.0-alpha01
29 września 2021 r.
Usługa androidx.wear:wear:1.3.0-alpha01
została zwolniona. Wersja 1.3.0-alfa01 zawiera te zatwierdzenia.
Poprawki błędów
ConfirmationOverlay
przesuwa ikonę w górę, aby ją zmieścić dłuższe wiadomości, bez wchodzenia w obramowanie urządzenia (lub poza ekranem). (I54bff)
Wear – aktualne i Interakcje w wersji 1.1.0
Wersja 1.1.0-beta01
24 lipca 2024 r.
Usługa androidx.wear:wear-remote-interactions:1.1.0-beta01
została zwolniona. Wersja 1.1.0-beta01 zawiera te zatwierdzenia. Wersja 1.3.0-beta01 funkcji Wear Remote Interactions oznacza, że ta wersja biblioteki jest kompletna, a interfejs API jest zablokowany (z wyjątkiem miejsc oznaczonych jako eksperymentalne).
Wersja 1.1.0-alfa04
10 stycznia 2024 r.
Usługa androidx.wear:wear-phone-interactions:1.1.0-alpha04
została zwolniona. Wersja 1.1.0-alfa04 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy funkcję
RemoteAuthClient.isRemoteAuthAvailable
, która sprawdza, czy dostępne jest uwierzytelnianie zdalne. (IBc10c).
Wersja 1.1.0-alfa02
10 stycznia 2024 r.
Usługa androidx.wear:wear-remote-interactions:1.1.0-alpha02
została zwolniona. Wersja 1.1.0-alfa02 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy funkcję
RemoteActivityHelper.isRemoteActivityHelperAvailable
, która pomaga sprawdzić, czy jest dostępna funkcja uruchamiania aktywności zdalnej. (I107a9) - Zaktualizowaliśmy konstruktor
RemoteActivityHelper
, aby był zgodny z opcjonalnym parametrem w Javie. (I75554)
Wersja 1.1.0-alpha01
21 czerwca 2023 r.
Usługa androidx.wear:wear-remote-interactions:1.1.0-alpha01
została zwolniona. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.
Poprawki błędów
- Ulepszyliśmy proces uzupełniania i obsługi błędów w
RemoteActivityHelper
. (I60d60)
Treści tłumaczone przez użytkowników zewnętrznych
- Usuń zależność Guava z zasad
wear-remote-interactions
i użyj mniejszych rozwiązań alternatywnych.
Wear-Phone-Interactions w wersji 1.1.0-alfa03
9 marca 2022 r.
Usługa androidx.wear:wear-phone-interactions:1.1.0-alpha03
została zwolniona. Wersja 1.1.0-alfa03 zawiera te zatwierdzenia.
Poprawki błędów
redirectUrl
zOAuthRequest
zwraca teraz pusty ciąg znaków, jeśli adres URL przekierowania nie jest ustawiony w podanym adresie URL żądania. (I44242)
Wear-Phone-Interactions w wersji 1.1.0-alfa02
15 grudnia 2021 roku
Usługa androidx.wear:wear-phone-interactions:1.1.0-alpha02
została zwolniona. Wersja 1.1.0-alfa02 zawiera te zatwierdzenia.
Poprawki błędów
- Napraw błędy w dokumentacji funkcji
RemoteAuthClient
, w tym błąd we fragmencie kodu i nieaktywny link doErrorCode
(I260e8)
Wear-Phone-Interactions w wersji 1.1.0-alfa01
15 września 2021 r.
Usługa androidx.wear:wear-phone-interactions:1.1.0-alpha01
została zwolniona. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
Wear – aktualne i Interakcje w wersji 1.0.0
Wear-Phone-Interactions w wersji 1.0.1
15 grudnia 2021 roku
Usługa androidx.wear:wear-phone-interactions:1.0.1
została zwolniona. Wersja 1.0.1 zawiera te zatwierdzenia.
Poprawki błędów
- W przypadku próby wyłączenia powiadomień o połączeniu z brakiem uprawnień
excludedTags
zBridgingManager
był zgłaszany naprawiony wyjątek.
Wear-Phone-Interactions Wear-Remote-Interactions, wersja 1.0.0
15 września 2021 r.
androidx.wear:wear-phone-interactions:1.0.0
i androidx.wear:wear-remote-interactions:1.0.0
zostały udostępnione. Wersja 1.0.0 zawiera te zatwierdzenia.
Główne funkcje 1.0.0
Biblioteka interakcji telefonicznych zawiera interfejsy API do interakcji z urządzeń do noszenia na telefony. Zawiera ona następujące elementy:
PhoneDeviceType
udostępniający metody pomocnicze służące do określania typu telefonu, z którym jest sparowany zegarek. Można go używać tylko na urządzeniach do noszenia.- Interfejsy API
BridgingManager
,BridgingManagerService
iBridgingConfig
do włączania i wyłączania powiadomień w czasie działania oraz opcjonalnie ustawiania tagów dla powiadomień, które są wykluczone z trybu połączenia. RemoteAuthClient
, która zapewnia obsługę zdalnego uwierzytelniania na urządzeniach do noszenia oraz dodawanie rozszerzenia OAuth PKCE. Dostępne są dodatkowe moduły obsługi i klasy pomocnicze do komunikacji.
Biblioteka zdalnych interakcji zawiera interfejsy API do interakcji między urządzeniami do noszenia i telefonami. Zawiera ona następujące elementy:
WatchFaceConfigIntentHelper
, który udostępnia funkcje pomocnicze pozwalające określić identyfikator i nazwę komponentu w działaniach związanych z konfiguracją tarczy zegarka dla kreacji towarzyszącej na telefonie.- Klasa
RemoteActivityHelper
, która może służyć do otwierania intencji na innych urządzeniach (np. z zegarka na telefon).
Wear-Phone-Interactions Wear-Remote-Interactions w wersji 1.0.0-rc01
1 września 2021 roku
androidx.wear:wear-phone-interactions:1.0.0-rc01
i androidx.wear:wear-remote-interactions:1.0.0-rc01
zostały udostępnione. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Napraw błąd, który uniemożliwia przesyłanie błędów zgłoszonych w Usługach Google Play do elementu wywołującego podczas korzystania z usługi RemoteActivityHelper (I60d60).
- Naprawiono błąd polegający na tym, że usługa RemoteActivityHelper nigdy nie realizowałaby wartości Future, jeśli nie było połączonych węzłów lub jeśli nie znaleziono żądanego identyfikatora węzła (I60d60).
Wear – wersja 1.1
Wersja 1.1.0-alpha01
23 sierpnia 2023 r.
Usługa androidx.wear:wear-ongoing:1.1.0-alpha01
została zwolniona. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaj pole opisu treści do sekcji Ciągła aktywność. Będzie ona używana przez usługi ułatwień dostępu do opisania trwającej aktywności. (I79fc6)
Poprawki błędów
- Dodano
@RequiresPermission
do interfejsów API, które wymagają przyznania uprawnieńPOST_NOTIFICATIONS
w pakiecie SDK 33 i nowszych. (IE542e, b/238790278)
Wear – wersja 1.0.0
1 września 2021 roku
Usługa androidx.wear:wear-ongoing:1.0.0
została zwolniona. Wersja 1.0.0 zawiera te zatwierdzenia.
Główne funkcje 1.0.0
- Interfejs Wear Ongoing Activities API to interfejs API dla deweloperów (w tym deweloperów zewnętrznych), który służy do oznaczania ich aktywności jako „Ciągłej aktywności” i podawania niezbędnych informacji.
- Aktywne aktywności to takie, które mogą być wykonywane w tle zegarka (np. treningi, połączenia czy multimedia). Na Wear 3 aktywność zadeklarowana jako trwająca jest lepiej widoczna dzięki specjalnej ikonie nakładki na tarczy zegarka i innemu renderowaniu w Menu z aplikacjami.
- Więcej informacji znajdziesz w przewodniku dotyczącym bieżącej aktywności związanej z Wear.
Interakcje Wear-Phone – interakcje z Wear – wersja 1.0.0-beta01
18 sierpnia 2021 r.
androidx.wear:wear-phone-interactions:1.0.0-beta01
i androidx.wear:wear-remote-interactions:1.0.0-beta01
zostały udostępnione. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zmieniono nazwę zajęć
RemoteIntentHelper
naRemoteActivityHelper
. Zmieniono nazwy funkcjiRemoteIntentHelper#getRemoteIntentExtraIntent
iRemoteIntentHelper#getRemoteIntentNodeId
na odpowiednioRemoteActivityHelper#getTargetIntent
iRemoteActivityHelper#getTargetNodeId
. (Id2042).
Wear-ontualna wersja 1.0.0-rc01
18 sierpnia 2021 r.
Usługa androidx.wear:wear-ongoing:1.0.0-rc01
została udostępniona bez zmian od 1.0.0-beta01
. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Wear-ontualna wersja 1.0.0-beta01
4 sierpnia 2021 r.
Usługa androidx.wear:wear-ongoing:1.0.0-beta01
została zwolniona. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Niektórzy twórcy w OngoingActivity.Builder akceptują teraz argumentu null, aby zapewnić symetrię i spójność setery i gettery (I17ee5)
Wear-Phone-Interactions w wersji 1.0.0-alpha07
4 sierpnia 2021 r.
Usługa androidx.wear:wear-phone-interactions:1.0.0-alpha07
została zwolniona. Wersja 1.0.0-alfa07 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Nazwa
WearTypeHelper.isChinaDevice
została zmieniona naWearTypeHelper.isChinaBuild
. (I47302) - Zaktualizowaliśmy bibliotekę RemoteAuthClient, aby automatycznie wybierać parametrredirect_uri na podstawie typu urządzenia (RoW/Chiny). (I38866)
- Usunięto błąd, który powodował niepowodzenie konwertowania BridgingConfig na pakiet/z pakietu za pomocą wyjątku ClassCastException. Dodano testy jednostkowe klasy BridgingManagerService. (I68ecb).
Wear-Remote-Interactions w wersji 1.0.0-alfa06
4 sierpnia 2021 r.
Usługa androidx.wear:wear-remote-interactions:1.0.0-alpha06
została zwolniona. Wersja 1.0.0-alfa06 zawiera te zatwierdzenia.
Wear-Phone-Interactions w wersji 1.0.0-alpha06
21 lipca 2021 r.
Usługa androidx.wear:wear-phone-interactions:1.0.0-alpha06
została zwolniona. Wersja 1.0.0-alfa06 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Klasa
BridgingManagerSeviceBinder
jest teraz podklasą usługi i nazywa się BridgingManagerSevice. (I9fca2) - Metoda
RemoteAuthClient.Callback.onAuthorizationError
została zmieniona tak, aby obejmowała parametr OAuthRequest. Metody wymagające wywołania zwrotnego wymagają teraz również wykonawcy, dla którego zostało uruchomione wywołanie zwrotne. (I35e11)
Poprawki błędów
- Usprawniliśmy działanie interfejsu API uwierzytelniania, stosując więcej udokumentowanych parametrów i używając właściwości tam, gdzie to możliwe. (I12287)
Wear-Phone-Interactions w wersji 1.0.0-alpha05
30 czerwca 2021 r.
Usługa androidx.wear:wear-phone-interactions:1.0.0-alpha05
została zwolniona. Wersja 1.0.0-alfa05 zawiera te zatwierdzenia.
Poprawki błędów
- Udokumentowane parametry, które należy przekazać w konstruktorze dla funkcji
BridgingConfig.Builder
.
Wear – wersja 1.0.0-alfa06
2 czerwca 2021 r.
Usługa androidx.wear:wear-ongoing:1.0.0-alpha06
została zwolniona. Wersja 1.0.0-alfa06 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaj pole tytułu do sekcji Bieżące działanie. (I7a405)
Poprawki błędów
SerializationHelper.copy()
wykonuje teraz obronną kopię dokumentu informacje (I8b276)- ulepszona dokumentacja setCategory (Iff01f).
Wear – wersja 1.0.0-alfa05
18 maja 2021 r.
Usługa androidx.wear:wear-ongoing:1.0.0-alpha05
została zwolniona. Wersja 1.0.0-alfa05 zawiera te zatwierdzenia.
Zmiany interfejsu API
OngoingActivity
ma teraz moduły pobierania wszystkich wartości ustawionych bezpośrednio w kreatorze (lub wartości domyślne pobrane z powiązanego powiadomienia). (Id8ac8).- Nowa klasa
Status
jest teraz używana do utworzenia stanu elementuOngoingActivity
OngoingActivityData
iOngoingActivityStatus
nie są już częścią publicznego interfejsu API.
- Nowa klasa
Klasy
TextStatusPart
iTimerStatusPart
nie są już częścią publicznego interfejsu API. (I57fb6)- Aby utworzyć pole
Part
ze statycznym tekstem, użyj metodyStatus.TextPart
. - Aby utworzyć
Part
za pomocą stopera (zliczającego), użyjStatus.Stopwatch
- Aby utworzyć
Part
z odliczaniem, użyjStatus.Timer
- Aby utworzyć pole
Wear – wersja 1.0.0-alfa04
5 maja 2021 roku
Usługa androidx.wear:wear-ongoing:1.0.0-alpha04
została zwolniona. Wersja 1.0.0-alfa04 zawiera te zatwierdzenia.
Zmiany interfejsu API
- W systemie OngoingActivity metody z istniejących ongoingActivity są teraz nazywane odzyskiwaniemOngoingActivity.
- OngoingActivity ma teraz pełny zestaw modułów pobierających, ten sam, który wcześniej był dostępny tylko OngoingActivityData. (I0ee4d).
Wear-Remote-Interactions w wersji 1.0.0-alfa05
21 lipca 2021 r.
Usługa androidx.wear:wear-remote-interactions:1.0.0-alpha05
została zwolniona. Wersja 1.0.0-alfa05 zawiera te zatwierdzenia.
Zmiany interfejsu API
Dodaliśmy klasę
RemoteIntentHelper
(wcześniej RemoteIntent w bibliotece pomocy do noszenia), 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 AndroidaX. Aby sprawdzić, czy Sklep Play jest dostępny na połączonym telefonie, użyj metody
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType
do określenia, czy połączony telefon to telefon z Androidem. Następnie użyj metodyandroidx.wear.utils.WearTypeHelper.isChinaDevice
, aby określić, czy połączony telefon to urządzenie chińskie. Jeśli masz telefon z Androidem, a nie jest to urządzenie chińskie, będzie dostępny Sklep Play. (Ie7dec)
Wear-Phone-Interactions w wersji 1.0.0-alfa04
7 kwietnia 2021 r.
Usługa androidx.wear:wear-phone-interactions:1.0.0-alpha04
została zwolniona. Wersja 1.0.0-alfa04 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zaktualizowaliśmy stałe
ErrorCode
, aby nowa biblioteka była zgodna wstecznie z implementacją w bibliotece pomocy do noszenia.
Poprawki błędów
- Usunięto wyjątek powodowany przez nowy interfejs OAuth API podczas uruchamiania sesji OAuth.
Wear-Remote-Interactions w wersji 1.0.0-alfa03
7 kwietnia 2021 r.
Usługa androidx.wear:wear-remote-interactions:1.0.0-alpha03
została zwolniona. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zmieniono klasę
PlayStoreAvailability
na klasę zawierającą obiekt towarzyszący z metodami statycznymi. Sposób użycia pozostaje bez zmian.
Poprawki błędów
- Poprawiono wyświetlanie przykładowego kodu z rzeczywistymi znakami HTML w dokumencie z podsumowaniem dotyczącym pliku
WatchFaceConfigIntentHelper
.
Interakcje z telefonami na Wear OS w wersji 1.0.0-alfa03
10 marca 2021 r.
androidx.wear:wear-ongoing:1.0.0-alpha03
i androidx.wear:wear-phone-interactions:1.0.0-alpha03
zostały udostępnione. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.
Nowe funkcje
- Przenieś protokół OAuthClient z biblioteki pomocy urządzenia do noszenia na AndroidaX. Ta przeniesiona klasa została zmieniona na RemoteAuthClient i zapewnia obsługę zdalnego uwierzytelniania na urządzeniach do noszenia wraz z obsługą dodawania rozszerzenia OAuth PKCE. Dostępne są dodatkowe moduły obsługi i klasy pomocnicze do komunikacji.
- Bieżące działania można teraz powiązać z powiadomieniem zawierającym tag za pomocą nowego konstruktora OngoingActivity.Builder.
Zmiany interfejsu API
- Dodano obsługę tagów powiadomień dla działań trwających Biblioteka (I653b4)
- Przenieś protokół OAuthClient z biblioteki pomocy Wear do AndroidaX i dodaj obsługę rozszerzenia OAuth PKCE (I3eaaa)
Wear-Remote-Interactions w wersji 1.0.0-alfa02
10 marca 2021 r.
Usługa androidx.wear:wear-remote-interactions:1.0.0-alpha02
została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Migracja klasy PlayStoreAvailability z biblioteki pomocy Wearable do AndroidaX, który udostępnia interfejs API do sprawdzania, czy Sklep Play jest dostępny na telefonie.
Poprawki błędów
- Migruję klasę PlayStoreAvailability z Biblioteka pomocy do noszenia na AndroidzieX. (I69bfe)
Wersja 1.0.0-alpha02
10 lutego 2021 r.
androidx.wear:wear-ongoing:1.0.0-alpha02
i androidx.wear:wear-phone-interactions:1.0.0-alpha02
zostały udostępnione. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy obsługę bardziej złożonych stanów. Składają się z szablonu (lub kilku) oraz serii części, które zostaną wykorzystane do wypełnienia obiektów zastępczych szablonu. OngoingActivityStatus zawiera teraz metodę statyczną do tworzenia prostych stanów z jedną częścią (tekstową lub licznik czasu) oraz narzędzie do tworzenia bardziej złożonych stanów. (I1fe81).
- Przenieś klasy BridgingManager i BridgingConfig z biblioteki pomocy Wear do AndroidaX, który udostępnia interfejsy API do włączania i wyłączania powiadomień w czasie działania oraz opcjonalnie ustawianie tagów powiadomień, które są wykluczone z trybu połączenia. (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
zostały udostępnione. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
Przenieś bibliotekę Ciągłe działania do nowej biblioteki podrzędnej: „Warsztaty noszenia”. Zajęcia są teraz dostępne w pakiecie androidx.wear.ongoing (wcześniej androidx.wear.ongoingactivities) (I7c029)
Utwórz nową bibliotekę pomocy zawierającą zajęcia, które obsługują interakcje z urządzeń do noszenia na telefony. Początkowo zawierają one klasy przeniesione z biblioteki pomocy do noszenia. (Id5180).
Przenieś klasę PhoneDeviceType z biblioteki pomocy urządzenia do noszenia na AndroidaX. Przeniesiona klasa ma nazwę PhoneTypeHelper, która udostępnia metody pomocnicze do określania typu telefonu, z którym jest sparowany bieżący zegarek. Ta kategoria jest przeznaczona do użycia tylko na urządzeniach do noszenia. (IBD947)
Utwórz nową bibliotekę pomocy zawierającą zajęcia, które obsługują interakcje między urządzeniami do noszenia i telefonami. Początkowo zawierają one klasy przeniesione z biblioteki pomocy do noszenia. (DEb4)
Przenieś klasę WatchFaceCompanion z biblioteki pomocy na urządzeniach do noszenia na AndroidaX. Przeniesiona klasa ma nazwę WatchFaceConfigIntentHelper, która udostępnia funkcje pomocnicze do określania identyfikatora i nazwy komponentu w działaniach związanych z konfiguracją tarczy zegarka w aplikacji towarzyszącej na telefonie. Można jej też używać lokalnie do konfigurowania tarczy zegarka na urządzeniu do noszenia. (Ia455f).
Widżety i tarcza zegarka 1.0.0 na Wear
Wersja 1.0.0-alfa22
15 września 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha22
została zwolniona. Wersja 1.0.0-alfa22 zawiera te zatwierdzenia.
Nowe funkcje
- Edytujący sesję subskrybuje teraz obserwatorów cyklu życia, więc nie musisz już jej zamykać, gdy przestaniesz być aktywny.
Zmiany interfejsu API
- EditorSession i ListenableEditorSession używają teraz biblioteki kotlin StateFlows do parametrów complicationSlotsState, ComplicationsPreviewData i ComplicationsDataSourceInfo. (I761d9)
- EditorSession#userStyle to teraz
MutableStateFlow<UserStyle>
(I32ca9) - EditorSession.createOnWatchEditorSession korzysta teraz z obserwatora cyklu życia, który automatycznie się zamyka, gdy wykryje onDestroy. Oprócz tego funkcja
createOnWatchEditorSession
wymaga teraz tylko przekazania aktywności. Identyczne zmiany zostały też zastosowane w funkcji ListenableEditorSession. (IC6b7f) - Konstruktor CustomValueUserStyleSettings został przywrócony jako część publicznego interfejsu API. (I2e69a)
- Jeśli ustawienie nie występuje w schemacie lub jeśli opcja nie jest zgodna z ustawieniem, zasada
UserStyle
dziedziczy teraz regułę z metodyMap<UserStyleSetting, UserStyleSetting.Option>
.MutableUserStyleSetting#put
zgłasza wyjątek IllegalArgumentException. (IBa40f)
Wersja 1.0.0-alfa21
1 września 2021 roku
Usługa androidx.wear:wear-*:1.0.0-alpha21
została zwolniona. Wersja 1.0.0-alfa21 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Wszystkie interfejsy API do tworzenia publicznych tarcz, klientów, edytora i widżetów używają teraz java.time.Instant w przypadku czasu, a nie długiego czasu, w związku z czym minimalny poziom interfejsu API wzrósł do 26. (I3cd48).
- Interfejsy API tarczy zegarka i widżetów używają teraz stałej ZonedDateTime zamiast Kalendarza. (I25cf8).
- Obiekt ComplicationSlots jest teraz inicjowany przy użyciu parametru NoDataComplicationData, komplikacja ComplicationSlot.complicationData zawsze ma wartość, a obiekt CanvasComplicationDrawable.complicationData nie może już przyjmować wartości null. (I4dfd6) Zmniejsza to (ale nie eliminuje) migotania podczas przełączania się między tarczami zegarka.
Wersja 1.0.0-alfa20
18 sierpnia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha20
została zwolniona. Wersja 1.0.0-alfa20 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Do obiektu ComplicationDataSourceInfo dodaliśmy element createFallbackPreviewData, którego można używać, gdy ComplicationDataSourceInfoSource. (I38c4D).
- Interfejs ComplicationDataSourceUpdateRequester został przekształcony w interfejs, aby umożliwić naśmiewanie się z testów jednostkowych. Możesz utworzyć konkretne żądanie ComplicationDataSourceUpdateRequester za pomocą metody ComplicationDataSourceUpdateRequester.create(). (I7da22).
- Parametr RenderParameters.pressComplicationSlotIds został zastąpiony przez funkcję RenderParameters.lastComplicationTapDownEvents, która wyświetla nową klasę TapEvent zawierającą potrójne współrzędne x i y kliknięcia w pikselach oraz sygnaturę czasową. Pole
WatchFace.TapListener.onTap
zostało zastąpione elementemonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
. Dodatkowo usuniętoInteractiveWatchFaceClient.displayPressedAnimation
. (Id87d2). - Dodano adnotację o wątkach w przypadku parametru setWażneForAccessibility (I990fa).
- Element ComplicationSlotBoundsType został przeniesiony do klasy androidx-wear-watchface.ComplicationSlotBoundsType w kategorii Wear/wear-watch. (I09420)
- Dodaliśmy obsługę przekazywania identyfikatorów zasobów w postaci ciągów znaków do elementów UserStyleSettings i Opcje. Oto zalecany sposób tworzenia tych obiektów. (I03d5f)
- Nałożono ograniczenia dotyczące maksymalnego rozmiaru przewodu 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ę z
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
naListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
. (I64ce2). - Zmodyfikowaliśmy element EditorState.previewComplicationsData, tak aby zawierał tylko dane włączonych widżetów. Dodaliśmy też element
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
, który, jeśli jest przekazywany dorenderWatchFaceToBitmap
, lubPreviewScreenshotParams
żąda renderowania z domyślnym czasem podglądu tarczy zegarka. (If7b3c). - Usunęliśmy konstruktory UserStyleSettings przyjmujące cechy CharSequence z publicznego interfejsu API. Zalecamy używanie konstruktorów, które wymagają identyfikatorów StringResource. (I8537B)
CurrentUserStyleRepository.UserStyleChangeListener
obsługuje teraz konwersję SAM. (I85989)
Wersja 1.0.0-alfa19
4 sierpnia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha19
została zwolniona. Wersja 1.0.0-alfa19 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodano kod
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient
, który zawiera kod typuListenableFuture
dla usługiWatchFaceMetadataClient.createWatchFaceMetadataClient
. (I5fa37) UserStyleOption.getOptionForId
akceptuje terazUserStyleOption.Id
zamiast tablicy bajtów. (I469be)- Podaj stałe
BooleanOption.TRUE
iBooleanOption.FALSE
i nie zezwalaj na tworzenie instancji (I46e09) - Metody w kliencie Wear-watchface-client, które mogą zgłaszać wyjątek RemoteException, są teraz odpowiednio oznaczone. (IB8438)
- Aby zachować spójność, zmieniliśmy nazwę
EditorSession.createOnWatchEditingSession
nacreateOnWatchEditorSession
. PodobniecreateHeadlessEditingSession
nazywa się terazcreateHeadlessEditorSession
. Nazwy opakowań gujawy również zostały zmienione. (I1526b) EditorSession
jest teraz interfejsem, aListenableEditorSession.commitChangesOnClose
zostało prawidłowo delegowane. (I7dc3e)- Obecnie odrzucamy wszystkie schematy stylu użytkownika, które zawierają ustawienia lub opcje z sprzecznymi identyfikatorami (Ic2715).
- Dodaliśmy przeciążony
UserStyle.get
, który akceptujeUserStyleSetting.Id
. (I2aa0f).
Wersja 1.0.0-alfa18
21 lipca 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha18
została zwolniona. Wersja 1.0.0-alfa18 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Przenieśliśmy
ComplicationHelperActivity
do bibliotekiandroidx.wear:wear-watchface
. (I39e76) - Aby zachować spójność i przejrzystość, nazwa
ComplicationProvider
została zmieniona naComplicationDataSource
, a nazwy wszystkich klas z nazwą dostawcy zostały w podobny sposób zmienione. (IAP0b), - Element
CanvasComplication.isHighlighted
został przeniesiony do folderuRenderParameters.pressedComplicationSlotIds
. Jest to krok w kierunku zmiany stanuCanvasComplication
na bezstanowy. Aby obsługiwać tę zmianę,CanvasComplication.render
przyjmuje teraz również parametrslotId
jako parametr i przekazuje doGlesTextureComplication
parametrComplicationSlot
. (I50e6e) - Do
EditorRequest
dodaliśmyheadlessDeviceConfig
. Jeśli nie ma on wartości null, ten parametr jest używany do konstruowania instancji bez interfejsu graficznego z odwołaniem do pola EditorSession zamiast wykonywania działania na instancji interaktywnej. Umożliwia to wywołanie edytora w przypadku innej tarczy zegarka. (I0a820) - Dodaliśmy eksperymentalną
WatchFaceMetadataClient
, która umożliwia sprawne pobieranie statycznych metadanych tarczy zegarka, takich jakUserStyleSchema
, oraz poprawionych szczegółów dotyczących tarczyComplicationSlots
. (I6bfdf) - Zmieniliśmy nazwę
CanvasRenderer.uiThreadInit
na init. (I6fff9) - W żądaniu EditorRequest dodaliśmy opcjonalny nowy parametr PreviewScreenParams. Instruuje on EditorSession, że ma zrobić zrzut ekranu podglądu po zatwierdzeniu z tym parametrem. Obraz podglądu jest wyświetlany
EditorState.previewImage
. (IC2c16).
Poprawki błędów
- Deweloperzy nie muszą już dodawać ComplicationHelperActivity do swojego pliku manifestu. (I6f0c2)
Wersja 1.0.0-alfa17
30 czerwca 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha17
została zwolniona. Wersja 1.0.0-alfa17 zawiera te zatwierdzenia.
Nowe funkcje
W
GlesRenderer
regułymakeUiThreadContextCurrent
imakeBackgroundThreadContextCurrent
zostały zastąpione przezrunUiThreadGlCommands
irunBackgroundThreadGlCommands
, które akceptująRunnable
. Biblioteka zapewnia, że w danym momencie wykonywane jest tylko 1 uruchomione polecenie GL.Aby ułatwić inicjowanie w usłudze UiThread, dodaliśmy pole
CanvasRenderer.uiThreadInit
, które jest wywoływane raz w elemencie UiThread przed wywołaniami renderowania. Dodaliśmy teżonRendererCreated
doCanvasComplication
, co ułatwia użytkownikomRenderer
iCanvasComplication
udostępnianie stanu.Dla jasności zmieniliśmy nazwę
Complication
naComplicationSlot
, acomplicationId
nacomplicationSlotId
lubcomplicationInstanceId
w zależności od użycia
Zmiany interfejsu API
- Dla jasności zmieniliśmy nazwę
Complication
naComplicationSlot
, acomplicationId
nacomplicationSlotId
lubcomplicationInstanceId
w zależności od użycia. W podobny sposób zmieniły się nazwy klas korzystających z kompilacji, np. ComplicationsManager nazywa się teraz ComplicationSlotsManager. (I4da44). - W GlesRenderer
makeUiThreadContextCurrent
imakeBackgroundThreadContextCurrent
zostały zastąpione elementamirunUiThreadGlCommands
irunBackgroundThreadGlCommands
, które akceptująRunnable
. Te funkcje są potrzebne tylko wtedy, gdy musisz wykonywać wywołania GL poza renderowaniem (runBackgroundThreadGlCommands
ionUiThreadGlSurfaceCreated
). Jest to wymagane, ponieważ w tym samym procesie może być kilka GlesRenderer, z których każdy może mieć własny kontekst, potencjalnie z różnych tarcz zegarka. Oprócz tego dostęp do udostępnionego bieżącego kontekstu GL jest teraz zsynchronizowany. (I04d59) - Dodaliśmy obiekt
CanvasRenderer.uiThreadInit
, który jest wywoływany raz w elemencie UiThread przed wszelkimi wywołaniami do renderowania. Aby ułatwić korzystanie z usługi GlesRenderer, zmieniliśmy nazwęonGlContextCreated
naonBackgroundThreadGlContextCreated
ionGlSurfaceCreated
naonUiThreadGlSurfaceCreated
. (If86d0). HeadlessWatchFaceClient
i Nazwa usługiInteractiveWatchFaceClient
getComplicationsSlotState
została zmieniona nagetComplicationSlotsState
. WComplicationSlot
: nazwy kategoriicreateRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
icreateEdgeComplicationBuilder
zostały zmienione odpowiednio nacreateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
icreateEdgeComplicationSlotBuilder
. (Ib9adc)- Do obiektu CanvasComplication dodaliśmy narzędzie onRendererCreated, które ułatwia udostępnianie stanu przez funkcje Renderer i CanvasComplication. (I5e1ac).
Wersja 1.0.0-alfa16
16 czerwca 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha16
została zwolniona. Wersja 1.0.0-alfa16 zawiera te zatwierdzenia.
Nowe funkcje
- Naprawiliśmy kilka błędów związanych z niedawnymi zmianami modelu wątki, a także rozwiązaliśmy inne problemy z edytorem tarczy zegarka.
Poprawki błędów
- Zapobiegaj NPE w
onComplicationProviderChooserResult
(b/189594557) - Rozwiązywanie problemów z nieaktualnymi powierzchniami i dresabie (b/189452267)
- Rozwiąż problem z dostępem do:
complicationsManager.watchState
(b/189457893) - Napraw błąd czasu działania wątku w tle (b/189445428)
- Rozwiązywanie problemów z edytorem tarcz zegarka w wersji starszej (b/189126313)
- Nie aktualizuj parametrów bezpośredniego rozruchu w przypadku zmian stylu edytora (b/187177307)
Wersja 1.0.0-alfa15
2 czerwca 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha15
została zwolniona. Wersja 1.0.0-alfa15 zawiera te zatwierdzenia.
Nowe funkcje
Większość inicjowania tarczy zegarka jest teraz przeprowadzana w wątku w tle, jednak po wczytaniu wszystkich elementów renderowania tarczy zegarka w interfejsie UiThread. Między wczytywaniem a renderowaniem istnieje bariera pamięci, więc większość tarcz zegarka nie musi nic robić szczególnego. Wyjątek stanowią tarcze zegarka korzystające z GLES, ponieważ kontekst jest zależny od wątku.Tworzymy dwa połączone konteksty, dzięki czemu można przesłać zasoby GL (np. tekstury i cieniowanie) do wątku w tle i używać ich w interfejsie UiThread.
Podzieliliśmy konstrukcję tarcz zegarka na 3 funkcje: createUserStyleSchema, createComplicationsManager i createWatchFace. Zakładamy, że metody createUserStyleSchema i createComplicationsManager są szybkie, a wczytanie zasobów createWatchFace może zająć trochę czasu. Aby to zrobić, wprowadziliśmy funkcję WatchFaceControlClient.getDefaultProviderPoliciesAndType
, która zwraca mapę identyfikatorów złożonych na wartość DefaultComplicationProviderPolicies i domyślnie ComplicationType. To szybsze niż tworzenie instancji bez interfejsu graficznego, ponieważ wykonanie zapytania nie wymaga pełnego zainicjowania tarczy zegarka.
Widżety są teraz tworzone w CanvasComplicationFactory, który umożliwia leniwą budowę mechanizmów renderowania CanvasComplication.
Zmiany interfejsu API
- Tekst
@TargetApi
został zamieniony na@RequiresApi
. (I0184a, b/187447093, b/187447094) - Wprowadziliśmy funkcję
WatchFaceControlClient.getDefaultProviderPoliciesAndType
, która zwraca mapę identyfikatorów widżetów na zasadę DefaultComplicationProviderPolicies i domyślny obiekt ComplicationType. Tam, gdzie jest to możliwe, używana jest szybka ścieżka, która nie pozwala na pełne utworzenie tarczy zegarka. Aby to ułatwić, interfejs WatchFaceService API musiał zostać zmieniony przez wprowadzenie 2 nowych metod: createUserStyleSchema i createComplicationsManager, których wyniki są przekazywane do createWatchFace. Oprócz tego widżety są teraz tworzone w CanvasComplicationFactory, który umożliwia leniwą budowę mechanizmów renderowania CanvasComplication. (Iad6c1). - Usunęliśmy aplikację Most_latest_APP z elementów SystemProvider. (I3df00)
- ObservableWatchData jest teraz klasą zapieczętowaną. (IC940D)
- Element CanvasComplicationFactory.create (zwykle związany z IO) jest teraz wywoływany w wątku w tle dla każdego widżetu przed rozpoczęciem renderowania wątku. Między konstrukcją a renderowaniem występuje bariera pamięci, więc nie są wymagane specjalne podstawowe elementy podstawowe z wątkami. (Ia18f2).
- Konstrukcja tarczy zegarka jest teraz związana z wątkiem w tle, chociaż renderowanie odbywa się w całości w wątku interfejsu użytkownika. GlesRenderer obsługuje teraz 2 połączone konteksty. WatchFaceControlClient.createHeadlessWatchFaceClient i WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient mogą zostać rozwiązane przed zakończeniem działania funkcji WatchFaceService.createWatchFace. Kolejne wywołania interfejsu API będą blokowane do czasu zakończenia inicjowania watchFace. (Id9f41)
- EXPANSION_DP i STROKE_WIDTH_DP nie są już widoczne w pliku api.txt. (I54801)
- Ustawiliśmy EditorSession.createOnWatchEditingSession w sytuacji, w której wystąpi błąd, zamiast wysyłać sesję o wartości null. Dodatkowo zwracana wartość EditorRequest.createFromIntent i EditorSession.createOnWatchEditingSession ma teraz wartość NonNull. (I41eb4).
Wersja 1.0.0-alfa14
18 maja 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha14
została zwolniona. Wersja 1.0.0-alfa14 zawiera te zatwierdzenia.
Nowe funkcje
EditorSession.openComplicationProviderChooser
zwraca teraz element ChosenComplicationProvider, który zawiera identyfikator widżetu,ComplicationProviderInfo
oraz pakiet zawierający dodatkowe dodatki zwrócone przez wybór dostawcy.- Ponadto stopniowo przenosimy kod do Kotlin, a większość interfejsu API tarczy zegarka jest teraz definiowana w kotlin.
Zmiany interfejsu API
- Właściwości
eglContext
ieglDisplay
GlesRenderer nie mogą teraz przyjmować wartości null. Wszystkie błędy GL są teraz zgłaszane przezGlesRenderer.GlesException
, a nie przez środowisko wykonawcze. (IB1005). - Przenieśliśmy domenę
androidx.wear.watchface.complications.rendering.ComplicationDrawable
z Javy do Kotlin (Ibc3eb). - Przenieśliśmy usługę
androidx.wear.watchface.complications.rendering.ComplicationStyle
z Javy do Kotlin (I3375e) - Dodaliśmy informacje o dostawcy widżetu dla każdego widżetu w Edytorze. (I37f14)
- Rozszerzyliśmy wynik
EditorSession.openComplicationProviderChooser
o informacje zwrócone przez wybranych. (Iead6d).
Widżety na Wear Tarcza zegarka: wersja 1.0.0-alfa13
5 maja 2021 roku
Usługa androidx.wear:wear-*:1.0.0-alpha13
została zwolniona. Wersja 1.0.0-alfa13 zawiera te zatwierdzenia.
Nowe funkcje
Tarcze zegarka mogą oprócz wyświetlania godziny i widżetów zawierać ważne elementy wizualne. Aby umożliwić obsługę czytnika ekranu, tarcza zegarka może teraz określać ułatwienia dostępu ContentDescriptionLabel za pomocą właściwości extraContentDescriptionLabel w mechanizmie renderowania. Oprócz tego do widżetów dodaliśmy możliwość sterowania porządkowaniem znaczników ułatwień dostępu w interfejsie ContentDescriptionLabel. Można to zmienić za pomocą ustawienia ComplicationsUserStyleSettings.
Aby zachęcić programistów do uważnego rozważenia zakupu czytników ekranu, wymagamy, aby pola
contentDescription
w usługachShortTextComplicationData.Builder
,LongTextComplicationData.Builder
iRangedValueComplicationData.Builder
były przekazywane do ich konstruktorów. Jeśli w polucontentDescription
zostanie podana wartośćComplicationText.EMPTY
, na podstawie tekstu i tytułu zostanie automatycznie wygenerowana wartośćcontentDescription
.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
zgłasza terazServiceStartFailureException
, jeśli tarcza zegarka zgłosi wyjątek podczas inicjowania. Bardzo ułatwia to diagnozowanie problemów podczas uruchamiania tarczy.
Zmiany interfejsu API
- Dodaliśmy obsługę braku nazwy komponentu w kompilacji ComplicationProviderInfo, która jest niezbędna do obsługi starszych wersji Wear OS. (I744d2)
- Przenieśliśmy usługę
androidx.wear.complications.SystemProviders
z Javy do Kotlin. (Ia1f8b). - Ukryliśmy wszystkie klasy w publicznym interfejsie API, które znajdują się w android.support.wearable.complications i utworzyć odpowiednie i kody towarzyszące w Androidzie X. (I7BD50)
- Zmieniliśmy nazwę metody w
TimeDifferenceComplicationText.Builder
odsetMinimumUnit
dosetMinimalTimeUnit
(I20c64) - Stworzyliśmy
ShortTextComplicationData.Builder
lat,LongTextComplicationData.Builder
icontentDescription
, użytkownikRangedValueComplicationData.Builder
wymagane jest przekazanie tych danych w konstruktorze. (I8cb69) - Zmieniliśmy nazwę ComplicationProviderService.onComplicationUpdate na onComplicationRequest i zawarte w metodzie data ComplicationRequest parametry „identyfikator” i „typ”. Nazwa odpowiedniego detektora została zmieniona na ComplicationRequestListener i jego metodę ComplicationRequestListener.onComplicationData. (Iaf146).
- Usunęliśmy metodę
isActiveAt
z:ComplicationData
oraz widoczne polevalidTimeRange
. Ten wywołanie metody może zostać zastąpione elementemvalidTimeRange.contains
. (I65936) - Zmieniliśmy opis tej metody ComplicationProviderService.onComplicationActivated w celu otrzymania ComplicationType zamiast int. (Idb5ff)
- Przeniesiono pole ProviderUpdateRequester z Javy do Koltin. (IBCE13).
- Element GlesRender.makeContextCurrent jest teraz publiczny. Kod tarczy zegarka może wymagać wykonywania wywołań gcloud poza renderowaniem i użyciem funkcji onGlContextCreated, a wywołanie tej funkcji może wymagać kontekstu zarówno interaktywnego, jak i bez interfejsu graficznego. (I8a43c).
- WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient zgłasza teraz wyjątek ServiceStartFailureException, jeśli tarcza zegarka zgłasza się podczas inicjowania. Dodatkowo WatchFaceService zgłasza teraz wyjątek, jeśli createWatchFace trwa dłużej niż 6 sekund. (I59b2f)
- Usunęliśmy nieużywaną właściwość „id” obiektu
GlesTextureComplication
. (I28958) - Tarcza zegarka może teraz określać ułatwienia dostępu ContentDescriptionLabel za pomocą właściwości dodatkowej
Renderer
. Oprócz sterowania kolejnością elementów ContentDescriptionlabel ułatwienia dostępuTraversalIndex dodaliśmy do widżetów. Można to zmienić za pomocą ustawienia ComplicationsUserStyleSettings. (IB7362) - Rozwiń dokumentację na temat obsługi zdarzeń dotyku na tarczy zegarka. (Iaf31e).
Poprawki błędów
EditorSession.getComplicationsPreviewData()
zwraca teraz mapę tylko dla każdego widżetu, który nie jest pusty. Na potrzeby pustych widżetów używana jest instancja EmptyComplicationData. (I1ef7e).
Widżety na Wear Tarcza zegarka w wersji 1.0.0-alfa12
21 kwietnia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha12
została zwolniona. Wersja 1.0.0-alfa12 zawiera te zatwierdzenia.
Nowe funkcje
Edytorzy tarczy zegarka muszą wyróżnić fragmenty tarczy zegarka, aby wskazać, który aspekt jest konfigurowany. Rozszerzyliśmy RenderParameters, by umożliwić wyróżnienie stylów i widżetów. Dostępna jest nowa, opcjonalna warstwa zakreślacza, która jest matowana na tarczy zegarka i przezroczystością w formacie alfa. Na przykład: Załóżmy, że masz styl, który pozwala skonfigurować wygląd rąk zegarka, a mechanizm renderowania w ramach renderowania
Aby zachęcić dostawców komplikacji do obsługi ułatwień dostępu, opracowaliśmy PhotoImageComplicationData.Builder's, MonochromaticImageComplicationData.Builder's Pole contentDescription obiektu SmallImageComplicationData.Builder jako obowiązkowego argumentu konstruktora. Obiekty ComplicationTapFilter i Complication.createEdgeComplicationBuilder zostały dodane, aby obsługiwać widżety na krawędziach (rysowane wzdłuż krawędzi ekranu). Renderowanie i testowanie trafień takich widżetów pozostaje tylko na tarczy zegarka. Edytor towarzyszący nie obsługuje testowania trafień na krawędziach.
Zmiany interfejsu API
- Do stałych w obiekcie SystemProvider dodano prefiks
PROVIDER_
. (I1e773) - Stworzyliśmy
PhotoImageComplicationData.Builder
lat,MonochromaticImageComplicationData.Builder
i PolecontentDescription
dla użytkownikaSmallImageComplicationData.Builder
jest obowiązkowe w mogą być przekazywane w konstruktorze. (I9643a) - Nazwa konta
ProviderInfoRetriever.requestPreviewComplicationData
została zmieniona naretrievePreviewComplicationData
. (I911ee). - Przeniesiono
ComplicationProviderService
z Javy do Koltin. (I849f2) - Metoda
ComplicationProviderService.onBind
jest teraz zakończona (I39af5) - Przywróciliśmy interfejs
CanvasComplication
i przenieśliśmy aplikacjeCanvasComplicaitonDrawable
,GlesTextureComplication
iComplicationHighlightRenderer
do folderuwear-watchface-complications-rendering
. (I84670) - Ekran
RenderParameters
został refaktoryzowany, aby obsługiwać rozszerzone renderowanie z najciekawszymi momentami. Teraz można poprosić o renderowanie podświetleń stylów, jak również wszystkich lub pojedynczych widżetów. Oprócz tego CanvasRenderer i GlesRenderer mają nową abstrakcyjną metodę renderowaniaWyróżnijWyróżnijLayer do renderowania podświetleń, o które prosi edytor. Warstwa została zmieniona na WatchFaceLayer. (IC2444). - Dodano
ComplicationTapFilter
iComplication.createEdgeComplicationBuilder
, aby obsługiwać widżety na krawędziach. Renderowanie i testowanie trafień takich widżetów pozostaje tylko na tarczy zegarka. Testowanie trafień nie jest obsługiwane w edytorach. (IA6604). - Do
DoubleRangeUserStyleSetting
iLongRangeUserStyleSetting
:defaultValue
,maximumValue
iminimumValue
to teraz usługi kotlin. Oprócz tego usunęliśmy funkcjeUserStyleSetting.Option
, takie jak toBooleanOption, toCoplicationOptions, toListOption itp. (I52899) - Dodaj rozmiar podbródka do właściwości urządzenia dostępnych dla tarczy zegarka. (I76e1e).
- Konstruktor
ComplicationHighlightRenderer
akceptuje teraz parametryoutlineExpansion
ioutlineStrokeWidth
. (I87009) ComplicationDrawable.getNoDataText
jest teraz częścią publicznego interfejsu API. (I00598).
Wersja 1.0.0-alfa11
7 kwietnia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha11
została zwolniona. Wersja 1.0.0-alfa11 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejsy API tarczy zegarka dopracowano też do ulepszenia. Większość zmian to proste zmiany nazw, ale elementy
InteractiveWatchFaceWcsClient
iInteractiveWatchFaceSysUiClient
zostały scalone w elementyInteractiveWatchFaceClient
.
Zmiany interfejsu API
- ContentDescriptionLabel.text to teraz ComplicationText, a nie stara biblioteka pomocy TimeDependentText dla urządzeń do noszenia. (I80c03)
- Nie gwarantujemy, że aplikacja
SystemProviders.GOOGLE_PAY
będzie dostępna na wszystkich urządzeniach z Androidem R, więc została usunięta z listy. Możesz nadal korzystać z usług tego dostawcy w sieciDefaultComplicationProviderPolicy
(If01b5) - W celu zachowania spójności zmieniliśmy nazwę ComplicationUpdateCallback na ComplicationUpdateListener. (I61ec7).
- Mapa formatu przewodu UserStyle została zmieniona na
Map<String, byte[]>
. Dla wygody do publicznego interfejsu API dodaliśmy klasęUserStyleData
, która jest teraz używana przez aplikacje wear-watchface-client i wear-watchface-editor. Oprócz tego ustawienia CustomValueUserStyleSettings.CustomValueOption.value to terazbyte[]
, a nieString
. (Iaa103), - Do przechowywania identyfikatorów
UserStyleSetting
iUserStyleSetting.Option
są teraz odpowiednio używaneUserStyleSetting.Id
iUserStyleSetting.Option.Id
, a nie ciąg znaków. (I63f72) - Nazwa konta
InteractiveWatchFaceClient.SystemState
została zmieniona naWatchUiState
. (I6a4e0). - Konta
InteractiveWatchFaceWcsClient
iInteractiveWatchFaceSysUiClient
zostały scalone, ponieważ trudno było wyjaśnić podział odpowiedzialności (Iff3fa) - Nazwy wartości wyliczeniowych warstw zostały zmienione, aby zwiększyć ich przejrzystość.
Layer#TOP_LAYER
to terazLayer#COMPLICATIONS_OVERLAY
, aLayer#BASE_LAYER
to terazLayer#BASE
(Ia144e) - Nazwa usługi
UserStyleListener
została zmieniona naUserStyleChangeListener
(I18524) - Nazwa usługi
UserStyleRepository
została zmieniona naCurrentUserStyleRepository
(I6ea53) - Nazwa konta
InteractiveWatchFaceWcsClient.updateInstance
została zmieniona naupdateWatchfaceInstance
. (I321dc) - Nazwy zdarzeń TapType WatchFace zostały zmienione, aby były zgodne z funkcjami MotionEvents i Compose. (I0dfd0)
- Skrót TakeWatchfaceWrite został zmieniony na „renderWatchFaceToBitmap”, a nazwa polecenia TakeComplication snapshot została zmieniona na „renderComplicationToBitmap” (Ie0697)
- Interfejs CanvasComplication został usunięty i zastąpiony przez otwartą klasę CanvasComplicationDrawable. (I1f81f)
- Interfejs
WatcfaceControlServiceFactory
został usunięty z publicznego interfejsu API. (I1f8d3). - Zmieniliśmy nazwę z
CanvasComplication.setData
naCanvasComplication.loadData
. (If1239). - Nazwa konta
ComplicationsManager.bringAttentionToComplication
została zmieniona nadisplayPressedAnimation
. (IC4297). WatchFaceService.createWatchFace
ma teraz adnotację@UiThread
. (IB54c2)- Zmieniliśmy nazwę parametru CanvasComplicationDrawable, aby naprawić błąd. (I50dac).
- Dodano
HeadlessWatchFaceClient.toBundle()
iHeadlessWatchFaceClient.createFromBundle
, aby umożliwić wysyłanieHeadlessWatchFaceClient
przez AIDL. (I07c35) - HeadlessWatchFaceClient i InteractiveWatchFaceClient korzystają teraz z funkcji ClientExternalWatchListener i isConnectionAlive(), które umożliwiają obserwowanie, czy połączenie zostało zerwane z jakiegoś powodu (np. przez usunięcie tarczy zegarka). (IE446D)
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync
jest teraz funkcją zawieszania i ma teraz nazwęgetOrCreateInteractiveWatchFaceClient
. (IB745d)- Nazwa usługi
EditorState.commitChanges
ihasCommitChanges()
została zmieniona nashouldCommitChanges()
. (I06e04) - Nazwa
previewComplicationData
została zmieniona napreviewComplicationsData
, aby wskazać, że na mapie znajduje się (zwykle) więcej niż 1 widżet. (I56c06) - Nazwa pliku
InteractiveWatchFaceWcsClient.bringAttentionToComplication
została zmieniona nadisplayPressedAnimation
, aby zapewnić spójność zComplicationsManager.displayPressedAnimation
. (IC9999) - Wszystkie wystąpienia identyfikatora instancji tarczy zegarka zostały zawarte w nowej klasie WatchFaceId (I45fdf).
- Nazwa właściwości
complicationState
została zmieniona nacomplicationsState
, aby odzwierciedlić liczbę mnogą. (Ided07) - Usunęliśmy różne konwersje Binder na Wear-watchface-klienta – powinny być konieczne. (Icc4c0).
- W celu zachowania spójności funkcja
EditorServiceClient
została przekształcona w detektory, a nie obserwatorów. (Iec3a4). - Dodaliśmy kilka brakujących adnotacji
@Px
do folderówInteractiveWatchFaceSysUiClient
iWatchFaceControlClient
. (I3277a) - W celu zachowania spójności nazwa EditorObserverCallback została zmieniona na EditorObserverListener. (IE572D)
- Edytor EditorState.watchFaceInstanceId jest ograniczony do poziomu interfejsu API Androida R lub nowszego i nie może już mieć wartości null. (Id52bb)
- Nazwa konta
EditorSession.launchComplicationProviderChooser
została zmieniona naopenComplicationProviderChooser
. (I9d441) - Nazwa
EditorSession.createOnWatchEditingSessionAsync
została zmieniona nacreateOnWatchEditingSession
i jest teraz funkcją zawieszania. (Id257b). - Dodano kilka brakujących adnotacji
@UiThread
do plikuEditorSession
. (I6935C) - Nazwa konta
UserStyleSetting.affectsLayers
została zmieniona naaffectedLayers
. (I6e22b).
Wersja 1.0.0-alpha10
24 marca 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha10
została zwolniona. Wersja 1.0.0-alfa10 zawiera te zatwierdzenia.
Nowe funkcje
- Można teraz tworzyć otwarte obiekty gl (np. tekstury) podczas WatchFaceService.createWatchFace, ponieważ GlesRenderer wymaga teraz jednoznacznego wywołania initOpenGLContext, co można zrobić wewnątrz createWatchFace.
Zmiany interfejsu API
- Interfejs
IdAndComplicationData
prezentował się nieco niezręcznie i został usunięty z publicznego interfejsu API. Zajęcia a korzystających z niego interfejsy zostały poddane refaktoryzacji. (I4c928) - Zastąpiliśmy
ReferenceTime
elementamiCountUpTimeReference
iCountDownTimeReference
, które są bardziej przejrzyste. (IB66c6) - Dodano brakujące adnotacje
@Px
i@ColorInt
. (I9bbc3). - Parametr
Complication.complicationConfigExtras
nie może obecnie przyjmować wartości null i jego domyślna wartość toBundle.EMPTY
. (Iad04f). GlesRenderer
wymaga teraz połączenia się z firmąinitOpenGLContext
po zakończeniu budowy. Ta funkcja była szczegółem wewnętrznym, ale jest teraz dostępna w publicznym interfejsie API, aby umożliwić wcześniejsze wywołania GL w obrębie createWatchFace. (I726c2)- Usunęliśmy aplikację
Complication.setRenderer
, ponieważ nie była potrzebna. (IE992f) Complicaiton.setComplicationBounds
nie jest już częścią publicznego interfejsu API. Jeśli chcesz zmienić położenie widżetu, możesz to zrobić za pomocą funkcjiComplicationsUserStyleSetting
. (IBD9e5)- Nazwa konta
ComplicationsManager.TapCallback.onComplicationSingleTapped
została zmieniona naonComplicationTapped
. (I3a55c). - Nazwa konta
ComplicationOutlineRenderer.drawComplicationSelectOutline
została zmieniona nadrawComplicationOutline
. (I14b88)
Wersja 1.0.0-alpha09
10 marca 2021 r.
androidx.wear:wear-complications-*:1.0.0-alpha09
i androidx.wear:wear-watchface-*:1.0.0-alpha09
zostały udostępnione. Wersja 1.0.0-alfa09 zawiera te zatwierdzenia.
Nowe funkcje
- Zmienił się interfejs między hostem WCS/SysUI a tarczą zegarka. Edytujący może teraz określić, czy zmiana stylu spowoduje włączenie lub wyłączenie widżetu (wartość włączona = domyślnie włączona oraz wszelkie zastąpienie z elementu ComplicationsUserStyleSettings).
EditorService.closeEditor
umożliwia też SysUI zdalne zamknięcie edytora tarczy zegarka. - Oprócz tego
InteractiveWatchFaceWcsClient.setUserStyle
z bardziej zaawansowanym poleceniemupdateInstance
, które: zmienia identyfikator instancji, ustawia styl i usuwa widżety za jednym razem.
Zmiany interfejsu API
- Do bibliotek tarczy zegarka dodano TraceEvents. (I1a141).
- Styl
ComplicationState
ma teraz nową właściwośćinitiallyEnabled
, która przydaje się do przewidywania konsekwencji zmiany stylu. (I8C905) - Zastąpiliśmy
InteractiveWatchFaceWcsClient.setUserStyle
bardziej zaawansowanym poleceniemupdateInstance
, które: zmienia identyfikator instancji, ustawia styl i usuwa widżety. (Ife6f6). - Interfejsy API do zrzutów ekranu WatchFaceClient nie kompresują już zrzutów ekranu, ponieważ proces ten przebiegał powoli. Zamiast tego przetwarzanie postu pozostawiamy osobie wywołującej. (Id35af).
- Można teraz zdalnie zamknąć edytor na tarczy zegarka za pomocą
EditorService.closeEditor
. (IC5aa4). - Dodano adnotacje o dopuszczaniu wartości null (Ic16ed)
Wersja 1.0.0-alpha08
24 lutego 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha08
została zwolniona. Wersja 1.0.0-alfa08 zawiera te zatwierdzenia.
Nowe funkcje
- Niektóre tarcze zegarka są oparte na jednym lub kilku konkretnych widżetach, dlatego dodaliśmy dodatek Complication.Builder#setFixedComplicationProvider, który, jeśli ma wartość Prawda, uniemożliwia użytkownikowi zmianę widżetu w danym boksie.
- Biblioteki tarczy zegarka to Kotlin i używają współrzędnych (np. funkcji zawieszania). Użytkownikom Javy udostępniliśmy otoki ListenableFuture, które usprawniają współdziałanie w następujących bibliotekach: wear/wear-watchface-guava, wear/wear-watchface-client-guava wear/wear-watchface-editor-guava
Zmiany interfejsu API
- Wycofaliśmy obsługę dwukrotnego dotknięcia widżetów podczas uruchamiania wyboru dostawcy. Ta funkcja nie była typowa na tarczach zegarka i skomplikowała implementację SysUI. (I3ef24).
- Metody ProviderInfoDownloadr mogą zgłosić parametr ServiceOdłączedException, jeśli powiązanie zostanie nieoczekiwanie zamknięte. (Ib2cc4)
- Od Androida 11 obowiązują ograniczenia dotyczące czasu uruchamiania modułu ProviderChooser. Oprócz tego chcemy, aby edytory były tworzone za pomocą nowej wersji
wear-watchface-editor
, więc komponent ComplicationHelperActivity usuwamy z publicznego interfejsu API. (IB19c1). - Usuń metody statyczne ComplicationText na rzecz kreatorów. (Ibe399).
- Wprowadziliśmy kody guawy ListenableFuture dla różnych zawieszonych metod biblioteki tarcz zegarka. (I16b2c).
- W celu uniknięcia wątpliwości w interfejsie API dodaliśmy do obiektu RenderParameters dodatkowy konstruktor, który nie wymaga zabarwienia do użytku z warstwami warstw innych niż
LayerMode.DRAW_OUTLINED
. (I497ea) - Poprzednio element ListUserStyleSettings różnił się od drugiego, ponieważ miał argument domyślny. Teraz wszystkie konstrukcje podklasy StyleSetting na końcu przyjmują wartość domyślną. (I9dbfd).
- Komponent CanvasComplication został przerobiony na metodę ukrytą, która ułatwia wdrożenie podklasy (I5b321).
- Przekształciliśmy wynik EditorResult na nową usługę EditorService i zasadę
EditorSession.broadcastState()
, aby przesyłać strumieniowo aktualizacje do obserwatora (zwykle SysUI). (IC4370) - Niektóre tarcze zegarka są oparte na konkretnym widżetie i są integralną częścią tarczy zegarka, której nie można skonfigurować przez użytkownika. W tym celu dodaliśmy
Complication.Builder#setFixedComplicationProvider
. (I4509e) - Edytor EditorRequest określa teraz nazwę pakietu zamiast nazwy KomponentName, ponieważ wyszukiwanie nazwy klasy w edytorze przez SysUI było niewygodne. Potrzebujemy jedynie nazwy pakietu. (IB6814)
Wersja 1.0.0-alpha07
10 lutego 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha07
została zwolniona. Wersja 1.0.0-alfa07 zawiera te zatwierdzenia.
Nowe funkcje
- WatchFaceService.createWatchFace jest teraz funkcją zawieszenia, co oznacza, że tarcza zegarka nie musi już blokować wątku UI podczas oczekiwania na operacje wejścia-wyjścia. Podobnie edytor Wear-watchface i wear-complications-data
Zmiany interfejsu API
- Usuń klasę PhotoImage i użyj bezpośrednio ikony. (I8a70B)
- Udostępnij wartość validTimeRange właściwości ComplicationData. (I91366)
- Atrybuty jak obrazy są bardziej jednoznaczne. (I81700)
- Dane dotyczące Wear-watchface-editor i wear-complications-data zostały zmienione tak, aby używać funkcji zawieszania zamiast współrzędnych. RX Java & Wkrótce pojawią się nowe kody kompatybilne z Google. (If3c5f).
- ProviderInfoDownloadr zgłasza teraz PreviewNotAvailableException, jeśli requestPreviewComplicationData nie może zwrócić danych podglądu z powodu problemów z połączeniem lub braku obsługi interfejsu API. (I4964D)
- WatchFaceControlService::createWatchFaceControlClient jest teraz funkcją zawieszonej, a funkcja getOrCreateTapServiceBackedInteractiveWatchFaceWcsClient nazywa się teraz getOrCreateTapServiceBackedInteractiveWatchFaceWcsClientAsync, zwraca wartość
Deferred<InteractiveWatchFaceWcsClient>
. Środowisko Java RX i kody kompatybilne w przyszłości. (I5d461) - Zmień nazwę
CATEGORY_PROVIDER_CONFIG_ACTION
naCATEGORY_PROVIDER_CONFIG
. (I7c068). - Pamiętaj, że funkcja createOnWatchEditingSession została zawieszona, ponieważ tarcza zegarka jest niedostępna dopiero niedługo po rozpoczęciu działania edytora. (Ida9aa).
- WatchFaceService.createWatchFace to teraz funkcja zawieszania, która umożliwia inicjowanie asynchroniczne. Wcześniej trzeba było zablokować wątek główny. (If076a).
- W UserStyle działa teraz operator tablicy, a do interfejsu UserStyle.Option dodaliśmy pomocników podczas przesyłania. (I35036)
- Naprawiliśmy poważny błąd polegający na tym, że formaty przewodów UserStyle zmieniały niektóre niestabilne ukryte interfejsy API. (I8be09)
- Dodaliśmy funkcję CustomValueUserStyleSettings, która pozwala na przechowywanie pojedynczych ciągów znaków specyficznych dla aplikacji w obrębie klasy UserStyle. Domyślne edytory tarcz zegarka zignorują tę wartość. (IC04d2)
- Identyfikator instancji nie jest przekazywany w dodatkowych dodatkach do intencji w przypadku wersji R ani starszych wersji Androida Wear OS, których nie możemy uaktualnić. Aby to umożliwić, zezwalamy teraz na identyfikator InstancID na wartość null. (Id8b78)
- Edytor EditorRequest zawiera teraz parametr KomponentName ustawiony jako komponent w WatchFaceEditorContract.createIntent (I3cd06)
- W Edytorze na tarczy zegarka dostępne są teraz podglądy ComplicationData, aby użytkownik mógł zrobić zrzut ekranu tarczy zegarka po wprowadzeniu zmian. (I2c561)
Poprawki błędów
- Dodano zastąpienia toString() do elementów UserStyle, UserStyleSetting i UserStyleSchema, co sprawi, że praca z tymi klasami będzie nieco prostsza. (I9f5ec).
Wersja 1.0.0-alpha06
27 stycznia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha06
została zwolniona. Wersja 1.0.0-alfa06 zawiera te zatwierdzenia.
Nowe funkcje
- Wprowadziliśmy nową bibliotekę, w której deweloperzy tarcz zegarka i potencjalnie OEM mogą tworzyć edytory stylów i widżetów. SysUI wyśle intencję do tarczy zegarka, która użyje nowej klasy EditorSession, aby uzyskać dostęp do szczegółów funkcji WatchFace i zapisać wynik za pomocą Activity.setWatchRequestResult. Aby to ułatwić, dodaliśmy narzędzie ProviderInfoDownloadr.requestPreviewComplicationData, które umożliwia edytorom tarcz zegarków żądanie podglądu komponentu ComplicationData. Zaletą interfejsu ComplicationData w wersji testowej jest to, że w przeciwieństwie do bieżących danych nie trzeba się przejmować wyświetlaniem okien uprawnień podczas renderowania edytora (uwaga: jeśli użytkownik wybierze dostawcę z odpowiednim uprawnieniem, i tak zostanie poproszony o jego przyznanie).
Zmiany interfejsu API
- Komponent ComplicationProviderInfo zawiera teraz pole na nazwę KomponentName dostawcy. Obsługa tego pola zostanie dodana do Wear OS w późniejszym czasie. Do tego czasu będzie ona pusta. (Id8fc4)
- Dodano element ProviderInfoDownloadr.requestPreviewComplicationData, który umożliwia edytorom tarcz zegarków wysyłanie żądań podglądu ComplicationData. Jest to przydatne, ponieważ widżety na żywo mogą wymagać uprawnień i możesz teraz wyświetlać dane podglądu nieaktywnych widżetów. (I2e1df).
- Obiekt ComplicationManager jest teraz opcjonalnym parametrem konstruktora WatchFace. Kolejność argumentów została zmieniona, aby to umożliwić. (I66c76)
- Do widżetów dodaliśmy opcjonalny pakiet. Jeśli zostanie on scalony z intencją wysłaną w celu uruchomienia działania wyboru dostawcy, (Ifd4ad).
- Dodaliśmy nową bibliotekę
wear-watchface-editor
, która obsługuje tarczę zegarka i edytory hostowane przez SysUi. SysUI uruchomi te edytory, wysyłając intencję. Usługa aktywności tarczy zegarka może używać nowej klasy EditorSession, aby uzyskać dostęp do szczegółów tarczy zegarka i zapisywać wynik za pomocą Activity.setWatchRequestResult. (I2110D) - LayerMode.DRAW_HIGHLIGHTED nazywa się teraz LayerMode.DRAW_OUTLINED, a RenderParameters.highlightComplicationId nazywa się teraz RenderParameters.selectedComplicationId, co oprócz konspektu wyróżnia konkretny widżet. (I90a40)
- WatchFaceControlClient.getOrCreateTapServiceBackedInteractiveWatchFaceWcsClient będzie w przyszłości rozwiązać ten problem, korzystając z polecenia ServiceStartFailureException, jeśli usługa przestanie działać w trakcie 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 panelu ComplicationOverlay i pozostaje włączone. (I17b71)
Wersja 1.0.0-alpha05
13 stycznia 2021 r.
Usługa androidx.wear:wear-*:1.0.0-alpha05
została zwolniona. Wersja 1.0.0-alfa05 zawiera te zatwierdzenia.
Nowe funkcje
Tarcze często obsługują różne konfiguracje widżetów z różną liczbą widocznych widżetów. Aby ułatwić konfigurację, obsługujemy teraz wstępnie wyłączone widżety, wywołując w kreatorze funkcję setEnabled(false). Możesz je później włączyć w kompilacji ComplicationsUserStyleSettings.
Zmiany interfejsu API
- ComplicationHelperActivity akceptuje teraz
Collection<ComplicationType>
zamiast tablicy Int, co ułatwia korzystanie. (I1f13d) - Funkcja
ProviderInfoRetriever.retrieveProviderInfo
prawidłowo zwraca terazListenableFuture<ProviderInfo[]>
. (If2710). - Możesz teraz utworzyć widżet, który został początkowo wyłączony, wywołując w konstruktorze funkcję setEnabled(false). (Idaa53).
- WatchFaceState ma teraz właściwość isHeadless, która obowiązuje tylko w przypadku instancji bez interfejsu graficznego. (Ifa900).
- Obiekt ComplicationDrawable obsługuje teraz synchroniczne ładowanie elementów obiektów rysowalnych. Jest ona używana przez interfejsy API do robienia zrzutów. (I34d4a)
Wersja 1.0.0-alpha04
16 grudnia 2020 roku
Usługa androidx.wear:wear-*:1.0.0-alpha04
została zwolniona. Wersja 1.0.0-alfa04 zawiera te zatwierdzenia.
Nowe funkcje
- Biblioteka tarcz zegarka obsługuje teraz ustawianie limitów dla poszczególnych typów. Na przykład: możesz 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 interfejsu API
- Widżety używają teraz ComplicationBounds, który obejmuje obiekt
Map<ComplicationType, RectF>
w celu obsługi poszczególnych rozmiarów typów widżetów. (I1ebe7). - RenderParameters pozwala teraz określić odcień wyróżnienia, który będzie używany na zrzutach ekranu. (Iff42b).
- Obecnie do modyfikowania widżetów musisz używać komponentu ComplicationsUserStyleSettings (z wyjątkiem granic). Ma to na celu zapewnienie synchronizacji systemu operacyjnego. (I8dc5d)
- Mechanizm renderowania jest teraz zabezpieczoną klasą. Oznacza to, że CanvasRenderer i GlesRenderer są teraz wewnętrznymi klasami mechanizmu renderowania. (Iab5d4, b/173803230)
- Element CanvasComplicationDrawable.draw zabezpieczonego został zmieniony na OutlineOutline. W usłudze ObservableWatchData brakuje teraz kilku adnotacji UiThread. Funkcja ScreenState została całkowicie usunięta z funkcji WatchState. (If1393).
- Minimalny poziom interfejsu API tarczy zegarka to teraz 25. Pamiętaj, że obsługa sprzętowa kanwy wymaga interfejsu API na poziomie 26 lub wyższym. (Ic9bbd).
- InteractiveWatchFaceWcsClient ma teraz pomocnik getComplicationIdAt. (I05811)
- Poziom interfejsu API Wear-watchface-client został zmniejszony do 25, ale interfejsy API zrzutów ekranu wymagają API na poziomie 27. (Id31c2).
Poprawki błędów
- Teraz udostępniamy w polu ComplicationState aktualny typ komponentu ComplicationData widżetu. (I9B390)
- InteractiveWatchFaceWcs ma teraz metodę „bringAttentionToComplication do krótkiego podświetlania określonego widżetu. (I6d31c)
InteractiveWatchFaceWcsClient#setUserStyle
ma teraz przeciążenie akceptujące obiekt Map<string, string=""> co pozwala uniknąć dodatkowego połączenia IPC niezbędnego do utworzenia stylu UserStyle. (I24eec)</string,>
Wersja 1.0.0-alpha03
Grudzień 2, 2020
Usługa androidx.wear:wear-*:1.0.0-alpha03
została zwolniona. Wersja 1.0.0-alfa03 zawiera te zatwierdzenia.
Nowe funkcje
Klasa ComplicationData ma teraz właściwość compicationData, która umożliwia obserwowanie zmian w danych o kompilacji ComplicationData. Dzięki temu można zmieniać wymiary widżetu w zależności od jego typu.
Zmienne liczby klatek są teraz obsługiwane przez przypisywanie do Renderer.interactiveDrawModeUpdateDelayMillis. W przypadku tarcz zegarka, które co sekundę wyświetlają krótkie animacje, może to przynieść znaczne oszczędności energii, ponieważ bez animacji są one w trybie uśpienia.
Zmiany interfejsu API
- Nazwa
BACKGROUND_IMAGE
została zmieniona naPHOTO_IMAGE
wraz z powiązanymi zajęciami. Ten rodzaj widżetu jest używany nie tylko w przypadku tła, dlatego nazwa została zmieniona. (I995C6) - defaultComplicationProviderPolicy, z prawidłową adnotacją z użyciem IntDefs. (I3b431)
- Ukryta klasa TimeDependentText nie jest już widoczna przez ContentDescriptionLabel. Zamiast tego dodajemy metodę dostępu, która pobiera tekst w określonym momencie. (Ica692).
- Konstruktor ObservableWatchData jest teraz wewnętrzny. (I30121, b/173802666)
- Widżet zawiera teraz compicationData, dzięki któremu tarcze zegarka mogą obserwować zmiany w danych ComplicationData. Widżet ma też nowe wywołanie isActiveAt, dzięki któremu można określić, czy w konkretnej dacie i godzinach trzeba coś renderować. (IC0e2a).
- Pusty ciąg
SharedMemoryImage
nie występuje już w publicznym interfejsie API. (I7ee17). WatchFace.overridePreviewReferenceTimeMillis
ma teraz adnotację IntRange, a metody pobierania i metody ustawiającej mają teraz spójne nazwy. (Ia5f78).- Usługa
Complication.Builder
jest teraz tworzona za pomocą usługiComplication.createRoundRectComplicationBuilder
lubComplication.createBackgroundComplicationBuilder
w celu uniknięcia wątpliwości (I54063) - Dodano element WatchFace.TapListener, który umożliwia obserwowanie kliknięć niezwiązanych z widżetami przez tarczę zegarka. (Ic2fe1, b/172721168)
- Funkcja WatchFace obsługuje teraz zmienną liczbę klatek dzięki przypisywaniu do
Renderer.interactiveDrawModeUpdateDelayMillis
. Pomoże to wydłużyć czas pracy na baterii dzięki uśpieniu, gdy nie używasz animacji. (I707C9) - Funkcja WatchFace.Builder nie jest już potrzebna, a funkcja invalidate() i effectiveUpdateRateMillis zostały przeniesione do mechanizmu renderowania. (I329ea)
- Dla lepszej interoperacyjności w Javie z nazwami programów pobierających dla właściwości logicznych w WatchState (I6d2f1)
- Zmieniliśmy nazwę TapListener na TapCallback, a InvalidateCallback na invalidateListener w celu zachowania spójności. (I9414e)
- Aby zwiększyć przejrzystość, przenieśliśmy opcje stylów tarczy zegarka do Wear 2.0 w osobnych klasach. Setery WatchFace.Builder mają teraz symetryczne metody pobierania klasy WatchFace. (Iefdfc).
- Dodano obiekt InteractiveWatchFaceWcsClient i
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
, które pobierają istniejącą instancję lub tworzą ją, gdy usługa Wallaper połączy się i utworzy silnik. (Id666e) - WatchFaceControlClient to teraz interfejs umożliwiający przeprowadzanie testów i zbieranie go. (I875D9)
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl i InteractiveWatchFaceWcsClient to teraz interfejsy ułatwiające testowanie. (I7cdc3).
- Dodano adnotacje do metod w
wear-watchface-complications-rendering
(I0d65c)
Poprawki błędów
- Usuń kształt ekranu z konfiguracji DeviceConfig, który był duplikatem obiektu
android.content.res.Configuration#isScreenRound()
(Ifadf4) - Zmieniliśmy zasadę
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
naMap<String, String>
zamiastUserStyle
, ponieważ trudno jest utworzyćUserStyle
bez znajomości schematu, który można uzyskać dopiero po utworzeniu klienta. (IEA02a). - Popraw
InteractiveWatchFaceWcsClient
, aby używać formatuComplicationState
zamiast formatu przewodu. (Icb8a4) UserStyleSettings
jest teraz klasą zapleczoną, ponieważ edytorzy tarczy zegarka rozumieją tylko klasy wbudowane. (I2d797)
Wersja 1.0.0-alpha02
11 listopada 2020 roku
Usługa androidx.wear:wear-*:1.0.0-alpha02
została zwolniona. Wersja 1.0.0-alfa02 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Aplikacja
ComplicationDetails
nazywa się terazComplicationState
i jest odpowiednio zapakowana, a wykorzystanie obsługi urządzeń do noszenia@ComplicationData.ComplicationType
zostało przeniesione na AndroidaxComplicationType
. (I4dd36) - Dodaj do RenderParameters opcjonalny parametr
highlightedComplicationId
, który umożliwia wysłanie prośby o wyróżnienie pojedynczego widżetu na zrzutach ekranu. (I66ce9). ComplicationProviderService
, aby korzystać z nowego interfejsu API komplikacji stylów w celu zachowania spójności (Id5aea)getPreviewReferenceTimeMillis
sprawdza teraz czasy referencyjne zDeviceConfig
. (I779fe)- Uproszczenie interfejsu Renderer API – do obserwowania zmian możesz używać interfejsu
SurfaceHolder.Callback
. (I210db) - Pozycja
CanvasComplicationRenderer
nie obejmuje:Renderer
, dlatego zmieniono jej nazwę, aby była bardziej przejrzysta. (Ibe880)
Poprawki błędów
- Pierwsza wersja
androidx.wear:wear-watchface-client
(I1e35e) - Zmieniono nazwę
GlesTextureComplication#renderer
, aby zwiększyć przejrzystość (Ib78f7) - Aby zwiększyć przejrzystość, zmień nazwę
StyleCategory
naStyleSetting
(I488c7) - Dodaję
UserStyleSchema
w celu bardziej przejrzystego interfejsu API (If36f8)
Wersja 1.0.0-alpha01
28 października 2020 r.
androidx.wear:wear-complications-*:1.0.0-alpha01
i androidx.wear:wear-watchface-*:1.0.0-alpha01
zostały udostępnione. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Usunęliśmy niektóre elementy, których nie zamierzaliśmy udostępniać 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)
- w przypadku funkcji z wartościami zwracanymi w wartości logicznej, które mają być poprzedzone ciągiem „is”, a nie „get” (If36ff);
- Zaleca się, aby nie używać Protect, więc ta klasa została zrefaktoryzowana, aby mogła przyjmować parametry za pomocą konstruktora. (I61644)
- Zmieniono nazwę parametru setBackgroundComplication, aby zwiększyć przejrzystość. (I96fe3)
- Użyj właściwości Kotlin w przypadku komponentu ComplicationDrawable is zaznaczonyed & dane (I4dcc8)
- Zamiast komponentu ComplicationRenderer.InvalidateCallback dodajemy metodę Complication#invalidate() (I4f4c6).
- Te interfejsy API są wycofywane z WearableSupport i usunięte tutaj. (IB425C)
- Zmieniliśmy nazwy niektórych metod tworzenia elementów WatchFace, aby podkreślić ich dawny charakter Wear 2.0. (IdB775)
- Pierwszy kandydat do wersji beta interfejsu API do noszenia lub tarczy zegarka (Id3981)
- Pierwsza śledzona wersja interfejsu API. (IE9fe6)
- Prawidłowo ukrywam komponent ComplicationDrawable.BorderStyle IntDef i przejdź do komponentu ComplicationStyle, aby zachować spójność. (I27f7a)
- Dodawanie brakujących adnotacji do metod ComplicationStyle (I838fd)
- Ta biblioteka nie ma publicznej platformy API (I88e2b)
- Wszystkie klasy opcji kategorii stylu są teraz odpowiednio ostateczne. (IB8323)
- Pierwsza śledzona wersja interfejsu API. (I27c85)
Poprawki błędów
- Zmieniliśmy parametr ComplicationProviderService, aby mieć jawną metodę getComplicationPreviewData. (I4905f)
- Sprawdzanie lint interfejsu API dla MissingGetterMatchingBuilder jest włączone dla androidx (I4bbea, b/138602561)
- Zmień nazwę renderowania w interfejsach Wear-complications. (Ifea02).
- Wyświetlane nazwy kategorii stylów to teraz ciągi znaków (I28990)
- Zastąpienie nakładką w celu dopasowania do bieżących motywów i konwencji nazewnictwa stylów. (I4fde9).
- Zmieniliśmy nazwę UserStyle#getOptions w celu uniknięcia wątpliwości. (I695B6)
Wersja 1.2.0
Wersja 1.2.0
15 września 2021 r.
Usługa androidx.wear:wear:1.2.0
została zwolniona. Wersja 1.2.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.1.0
Dodano komponent CurvedText, który ułatwia pisanie krzywej tekstu zgodnie z krzywą największego okręgu, który 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 układania elementów podrzędnych pojedynczo na łuku w kierunku zgodnym z ruchem wskazówek zegara lub przeciwnie do ruchu wskazówek zegara. Jej elementy podrzędne mogą być zarówno standardowymi widżetami Androida, jak i „zakrzywione” widżety, 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, BounceibleFrameLayout, który obsługuje zamykanie za pomocą przycisku Wstecz lub przesuwanie palcem, by go zamknąć. Ten kontener ma być używany w ramach aktywności. Aby można było wykonać działanie zamknięcia, musisz dodać co najmniej 1 detektor. Detektor zwykle usuwa widok zawierający lub fragment z bieżącej aktywności. setSwipeExitible(boolean) & Funkcja setBackButtonCloseible(boolean) służy do bezpośredniej kontroli nad funkcjami. Ten nowy układ ma zastąpić istniejący slajd SecureFrameLayout.
Dodaliśmy obsługę wskazywania, że działanie może być „automatycznie wznawiane”, gdy urządzenie opuści tryb nieaktywny w klasie AmbientModeSupport. Ta funkcja była wcześniej dostępna w wycofanej klasie WearableActivity z WearableSupportLibrary. (I336ab)
Przeniesiono klasę WearableCalendarContract z biblioteki pomocy dotyczącej urządzeń do noszenia. Ten interfejs API zapewnia podzbiór danych dostępnych w KalendarzuContract, ale jest automatycznie synchronizowany z urządzeniami do noszenia. (I6f2d7)
W regionie
androidx.wear.utils
dodano nowy interfejs APIWearTypeHelper
, który pozwala określić, czy dane urządzenie do noszenia jest przeznaczone dla Chin. (IB01a9).Do aplikacji
androidx.wear.widget.ConfirmationOverlay
dodano funkcje ułatwień dostępu, które po ustawieniu umożliwiają odczytywanie na głos wiadomości (jeśli są włączone), a po nich opis animacji. (I524dd)Naprawiono błąd, który powodował awarię generateActivity, jeśli nie pojawiał się żaden komunikat został podany. (IE6055)
Naprawiono błąd, przez który przewijane w poziomie obiekty RecyclerViews powodowały
WearableDrawerLayout
, aby zobaczyć wszystkie interakcje. (I24c7f)
Wersja 1.2.0-rc01
1 września 2021 roku
Wersja androidx.wear:wear:1.2.0-rc01
została udostępniona bez zmian od ostatniej wersji beta. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Wersja 1.2.0-beta01
18 sierpnia 2021 r.
Usługa androidx.wear:wear:1.2.0-beta01
została zwolniona. Wersja 1.2.0-beta01 zawiera te zatwierdzenia.
Poprawki błędów
- Napraw błąd, który powodował awarię generateActivity, jeśli nie pojawiał się komunikat został podany. (IE6055)
Wersja 1.2.0-alfa13
4 sierpnia 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha13
została zwolniona. Wersja 1.2.0-alfa13 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Nazwa
WearTypeHelper.isChinaDevice
została zmieniona naWearTypeHelper.isChinaBuild
. (I47302)
Poprawki błędów
- Dodaliśmy do aplikacji
androidx.wear.widget.ConfirmationOverlay
funkcje ułatwień dostępu, które odczytują wiadomości (jeśli są włączone), a po nich opis animacji. (I524dd)
Wersja 1.2.0-alfa12
21 lipca 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha12
została zwolniona. Wersja 1.2.0-alfa12 zawiera te zatwierdzenia.
Zmiany interfejsu API
- W regionie
androidx.wear.utils
dodaliśmy nowy interfejs APIWearTypeHelper
, który pozwala określić, czy dane urządzenie do noszenia jest przeznaczone dla Chin. (IB01a9).
Wersja 1.2.0-alfa11
30 czerwca 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha11
została zwolniona. Wersja 1.2.0-alfa11 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono błąd, przez który przewijane w poziomie obiekty RecyclerViews powodowały
WearableDrawerLayout
, aby zobaczyć wszystkie interakcje. (I24c7f)
Wersja 1.2.0-alfa10
2 czerwca 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha10
została zwolniona. Wersja 1.2.0-alfa10 zawiera te zatwierdzenia.
Nowe funkcje
- Wersja Alpha10 poprawia ułatwienia dostępu w przypadku tekstu zakrzywionego i układów ArcLayouts. Dodaliśmy też drobne zmiany w nazwie elementu BounceibleFrameLayout, aby doprecyzować interfejs API.
Zmiany interfejsu API
- Zmieniliśmy nazwy następujących metod w dokumencie
DismissibleFrameLayout
(Ib195e):- .
Callback#onDismissed
->Callback#onDismissedFinished
isSwipeDismissible
->isDismissableBySwipe
isBackButtonDismissible
->isDismissableByBackButton
- Poniższe metody są ostatecznymi (Ib195e):
setBackButtonDismissible
setSwipeDismissible
registerCallback
unregisterCallback
Poprawki błędów
- Użyj zawartości CurvedTextView w TalkBack. (I05798)
- Większa dostępność zwykłych widoków w ArcLayout. (I4418D)
Wersja 1.2.0-alpha09
18 maja 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha09
została zwolniona. Wersja 1.2.0-alfa09 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodano nową funkcję
CurvedTextView.setTypeface()
(podobną do funkcjiTextView
), która ustawia krój tekstu oraz styl pogrubienia i kursywy. (I4653C) - Nazwa
WearArcLayout
została zmieniona naArcLayout
,WearCurvedText
naCurvedText
, a zWearArcLayout.ArcLayoutWidget
naArcLayout.Widget
. (I6E5CE)- W dniu
ArcLayout.Widget
zmieniono nazwęgetThicknessPx
nagetThickness
. - Stałe wyrównania w pionie w:
ArcLayout.LayoutParams
są teraz nazwa zaczynająca się odVERTICAL_ALIGN_
(zamiast poprzedniegoVALIGN_
)
- W dniu
CurvedTextView
metodysetMinSweepDegrees
isetMaxSweepDegrees
zostały zastąpione przez metodęsetSweepRangeDegrees
(I7a9d9)
Wersja 1.2.0-alpha08
5 maja 2021 roku
Usługa androidx.wear:wear:1.2.0-alpha08
została zwolniona. Wersja 1.2.0-alfa08 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Aby zwiększyć przejrzystość kodu, do niektórych parametrów kątów i typów zwrotów dodaliśmy adnotacje
@FloatRange
. (I430dd) - W interfejsie
WearArcLayout.ArcLayoutWidget
metodainsideClickArea
nosi teraz nazwę isPointInsideClickArea. (IA7307).
Wersja 1.2.0-alpha07
24 marca 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha07
została zwolniona. Wersja 1.2.0-alfa07 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawianie błędów występujących w elementach podrzędnych niezakrzywionych w WearArcLayout spowodowanych używaniem rozmiaru ekranu o wysokości większej niż szerokość. Te niezakrzywione elementy podrzędne są teraz prawidłowo umieszczone wewnątrz łuku na wszystkich rodzajach ekranów.
Wersja 1.2.0-alpha06
27 stycznia 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha06
została zwolniona. Wersja 1.2.0-alfa06 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Przenieś bibliotekę Ciągłe działania do nowej biblioteki podrzędnej: „Warsztaty noszenia”. Zajęcia są teraz dostępne w pakiecie androidx.wear.ongoing (wcześniej androidx.wear.ongoingactivities) (I7c029)
- Przenieś klasę WearableCalendarContract z biblioteki pomocy do noszenia na AndroidaX. Ten interfejs API zapewnia podzbiór danych dostępnych w KalendarzuContract, ale jest automatycznie synchronizowany z urządzeniami do noszenia. (I6f2d7)
Poprawki błędów
- Domyślnie wyłącz funkcję zamykania przycisku Wstecz w układzie klatki z możliwością zamknięcia, ponieważ to przesunięcie palcem to główny sposób powrotu do pełnego ekranu na urządzeniach do noszenia (Ic24e3).
- Usunięto problemy z obsługą widoczności dzieci w WearArcLayout (Icf912).
Wersja 1.2.0-alpha05
13 stycznia 2021 r.
Usługa androidx.wear:wear:1.2.0-alpha05
została zwolniona. Wersja 1.2.0-alfa05 zawiera te zatwierdzenia.
Poprawki błędów
- Zaktualizuj plik javadoc klasy AmbientModeSupport, aby udostępnić przykładowe fragmenty kodu, które lepiej pokazują ogólne zastosowanie tej klasy.
Wersja 1.2.0-alfa04
16 grudnia 2020 roku
Usługa androidx.wear:wear:1.2.0-alpha04
została zwolniona. Wersja 1.2.0-alfa04 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy obsługę wskazywania, że działanie może być „automatycznie wznawiane”, gdy urządzenie opuści tryb nieaktywny w klasie AmbientModeSupport. Ta funkcja była wcześniej dostępna w wycofanej klasie WearableActivity z WearableSupportLibrary. (I336ab)
- Trwająca aktywność
- Kategorię można teraz ustawić podczas tworzenia aktywności OngoingActivity, np.
OngoingActivitiy.Builder.getCategory(String)
- OngoingActivityData zawiera teraz sygnaturę czasową utworzenia zdarzenia OngoingActivity –
OngoingActivityData.getTimestamp()
- (I91cb4)
- Kategorię można teraz ustawić podczas tworzenia aktywności OngoingActivity, np.
- Dodano obsługę ustawiania marginesów w elementach podrzędnych WearArcLayout przez zmianę parametrów układu w celu rozszerzenia parametru MarginLayoutParams, np. wymiar WearArcLayout.LayoutParams – rozszerzenie android.view.ViewGroup.MarginLayoutParams. (I2cd88)
- Zmień domyślny typ kotwicy WearCurvedTextView na
WearArcLayout.ANCHOR_CENTER
(wcześniej:WearArcLayout.ANCHOR_START
). Upraszcza to połączenie między układem łuku a zakrzywionym tekstem, ponieważ zakrzywiony tekst jest domyślnie rysowany u góry na środku osi X, a układ łuku nadrzędnego może go obracać w odpowiednim miejscu. (I105FF)
Wersja 1.2.0-alfa03
Grudzień 2, 2020
Usługa androidx.wear:wear:1.2.0-alpha03
została zwolniona. Wersja 1.2.0-alfa03 zawiera te zatwierdzenia.
Nowe funkcje
Nowy kontener układu WaitibleFrameLayout, który obsługuje zamykanie za pomocą przycisku Wstecz lub przesuwanie palcem, aby go zamknąć. Ten kontener jest przeznaczony do użycia w ramach aktywności. Aby można było wykonać działanie zamknięcia, musisz dodać co najmniej 1 detektor. Detektor zwykle usuwa widok zawierający lub fragment z bieżącej aktywności. setSwipeExitible(boolean) & Funkcja setBackButtonCloseible(boolean) służy do bezpośredniej kontroli nad funkcjami. Ten nowy układ ma zastąpić istniejący slajd SecureFrameLayout.
Zakrzywione widżety obsługują teraz zdarzenia dotyku. Zwykłe widżety w układzie WearArc będą otrzymywać wszystkie zdarzenia dotyku zmapowane na ich przestrzeń współrzędnych. WearCurvedTextView (w obrębie obiektu WearArcLayout lub nie) może ustawiać moduły obsługi onClick i onLongClick.
Klasy bieżących działań są teraz obiektami VersionedParcelable, zamiast korzystać z niestandardowej serializacji/deserializacji. Ikona statyczna i intencja dotyku są teraz wymagane.
Zmiany interfejsu API
- Atrybut „sweepStopnie” w WearCurvedTextView jest dzielony na minSweepDethens i maxSweepDethens, aby zapewnić bardziej elastyczny układ tego widżetu.
Wersja 1.2.0-alfa02
11 listopada 2020 roku
Usługa androidx.wear:wear:1.2.0-alpha02
została zwolniona. Wersja 1.2.0-alfa02 zawiera te zatwierdzenia.
W tej wersji po raz pierwszy dodaliśmy nowy interfejs „Ongoing Activities API”. Deweloperzy mogą używać tego interfejsu API, aby zasygnalizować, że trwa długo prowadzona aktywność, taka jak ćwiczenia fitness lub sesja odtwarzania multimediów. Pozwala deweloperom udostępniać okresowe aktualizacje stanu, np. „odległość i czas” lub „odtwarzany utwór”, na tarczy zegarka lub w Menu z aplikacjami. Ta funkcja jest przeznaczona dla urządzeń w przyszłości, które mają włączoną funkcję ciągłego monitorowania aktywności.
Zmiany interfejsu API
- Nowy interfejs API dla trwającej aktywności – ten interfejs jest niedostępny na „nieobsługiwanych urządzeniach”. (I69a31)
Wersja 1.2.0-alpha01
28 października 2020 r.
Usługa androidx.wear:wear:1.2.0-alpha01
została zwolniona. Wersja 1.2.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano komponent WearCurvedTextView, który ułatwia pisanie krzywej tekstu zgodnie z krzywą największego okręgu, który 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 do układania elementów podrzędnych pojedynczo na łuku w kierunku zgodnym z ruchem wskazówek zegara lub przeciwnie do ruchu wskazówek zegara. Jej elementy podrzędne mogą być zarówno standardowymi widżetami Androida, jak i „zakrzywione” widżety, 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).
Wear-Wejście 1.2
Wersja 1.2.0-alfa02
29 września 2021 r.
androidx.wear:wear-input:1.2.0-alpha02
i androidx.wear:wear-input-testing:1.2.0-alpha02
zostały udostępnione. Wersja 1.2.0-alfa02 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zmieniono nazwę
disallowEmoji
nasetEmojisAllowed
wWearableRemoteInputExtender
, aby określić, czy ma być wyświetlana opcja rysowania emotikonów. (I28393)
Wersja 1.2.0-alpha01
15 września 2021 r.
androidx.wear:wear-input:1.2.0-alpha01
i androidx.wear:wear-input-testing:1.2.0-alpha01
zostały udostępnione. Wersja 1.2.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Udostępniono wszystkie stałe lokalizacji przycisku z okresu
WearableButtons
. (Ibb12c). - Dodano klasę
WearableRemoteInputExtender
, której można użyć do dodawania do android.app.RemoteInput dodatków związanych z Wear. (I01903).
Wear-Input 1.1.0
Wersja 1.1.0
18 sierpnia 2021 r.
androidx.wear:wear-input:1.1.0
i androidx.wear:wear-input-testing:1.1.0
zostały udostępnione. Wersja 1.1.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.0.0
- Dodano
RemoteInputIntentHelper
.- Tej klasy można użyć do utworzenia intencji RemoteInput. Następnie można ich użyć, aby poprosić użytkowników o podanie informacji w aktywności z możliwością dostosowania.
Wersja 1.1.0-rc01
4 sierpnia 2021 r.
androidx.wear:wear-input:1.1.0-rc01
i androidx.wear:wear-input-testing:1.1.0-rc01
zostały udostępnione. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.
Brak zmian w interfejsach API od wersji 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.
Wersje androidx.wear:wear-input:1.1.0-beta01
i androidx.wear:wear-input-testing:1.1.0-beta01
zostały udostępnione bez zmian od 1.1.0-alpha03
. Wersja 1.1.0-beta01 zawiera te zatwierdzenia.
Wersja 1.1.0-alfa03
30 czerwca 2021 r.
androidx.wear:wear-input:1.1.0-alpha03
i androidx.wear:wear-input-testing:1.1.0-alpha03
zostały udostępnione. Wersja 1.1.0-alfa03 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiliśmy błąd, który powodował, że intencje RemoteInput, do których dodano interfejsy
RemoteInput
za pomocąRemoteInputHelper.putRemoteInputsExtra
, były odrzucane.
Wersja 1.1.0-alfa02
18 maja 2021 r.
androidx.wear:wear-input:1.1.0-alpha02
i androidx.wear:wear-input-testing:1.1.0-alpha02
zostały udostępnione. Wersja 1.1.0-alfa02 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Metody usługi
RemoteInputIntentHelper
używane do pobierania lub umieszczania dodatków reprezentujących tytuł, anulowanie, potwierdzenie i etykiety w toku, używają teraz w przypadku tych etykiet etykietyCharSequence
zamiastString
. (I0e71f)
Wersja 1.1.0-alpha01
27 stycznia 2021 r.
androidx.wear:wear-input:1.1.0-alpha01
i androidx.wear:wear-input-testing:1.1.0-alpha01
zostały udostępnione. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Przenieś klasę RemoteInputIntent z biblioteki pomocy Wearable do AndroidaX. Przenoszona klasa jest teraz zmieniona na RemoteInputIntentHelper, który udostępnia funkcje pomocnicze do obsługi zdalnych danych wejściowych przez uruchamianie intencji. (I47cee),
Wear-Input 1.0.0
Wersja 1.0.0
Grudzień 2, 2020
androidx.wear:wear-input:1.0.0
i androidx.wear:wear-input-testing:1.0.0
zostały udostępnione. Wersja 1.0.0 zawiera te zatwierdzenia.
Ta wersja jest taka sama jak 1.0.0-rc01
.
Główne funkcje 1.0.0
Migracja funkcji WearableButtons z biblioteki pomocy urządzenia do noszenia do Jetpack.
Dodano interfejs
androidx.wear.input.test.TestWearableButtonsProvider
, który implementujeandroidx.wear.input.WearableButtonsProvider
, aby ułatwić testowanie aplikacji utworzonych za pomocą bibliotekiandroidx.wear:wear-input
.
Wersja 1.0.0-rc01
11 listopada 2020 roku
androidx.wear:wear-input:1.0.0-rc01
i androidx.wear:wear-input-testing:1.0.0-rc01
zostały udostępnione. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Ta wersja jest taka sama jak 1.0.0-beta01
.
Wersja 1.0.0-beta01
28 października 2020 r.
Wersje androidx.wear:wear-input:1.0.0-beta01
i androidx.wear:wear-input-testing:1.0.0-beta01
zostały udostępnione bez zmian od 1.1.0-alpha01
. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Wersja testowa Wear 1.0.0-alfa01
14 października 2020 r.
Usługa androidx.wear:wear-input-testing:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodano interfejs
androidx.wear.input.test.TestWearableButtonsProvider
, który implementujeandroidx.wear.input.WearableButtonsProvider
, aby ułatwić testowanie aplikacji utworzonych za pomocą bibliotekiandroidx.wear:wear-input
. (I0ed0c)
Wear-Input Wersja 1.0.0-alfa01
Wrzesień 2, 2020
Usługa androidx.wear:wear-input:1.0.0-alpha01
została zwolniona. Wersja 1.0.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
Migracja funkcji WearableButtons z biblioteki pomocy urządzenia do noszenia do Jetpack. Dodatkową pomoc dotyczącą testowania zapewnimy w bibliotece androidx.wear:wear-input-testing
w następnej wersji Jetpacka.
Wersja 1.1.0
Wersja 1.1.0
14 października 2020 r.
Usługa androidx.wear:wear:1.1.0
została zwolniona. Wersja 1.1.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.0.0
- Aby zachować zgodność z konwencją nazewnictwa w Androidzie, dodaliśmy do atrybutu BoxedEdges (obecnie
layout_BoxedEdges
) prefikslayout_
dla atrybutuBoxInsetLayout
. Spowoduje to usunięcie błędu linter w Android Studio w przypadku tych atrybutów. (I4272f) - Do elementu
ConfirmationActivity
dodaliśmy opcjonalny parametrEXTRA_ANIMATION_DURATION_MILLIS
, aby uwzględnić czas wyświetlania okna potwierdzenia. (adb83ce, b/143356547) - Zaktualizowano
WearableActionDrawView
, aby opóźniać nadnoszenie panelu działań do momentu jego pierwszego otwarcia. (I01026, b/163870541)
Wersja 1.1.0-rc03
Wrzesień 2, 2020
Usługa androidx.wear:wear:1.1.0-rc03
została zwolniona. Wersja 1.1.0-rc03 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązanie problemu polegającego na tym, że panel działań nie wyświetlał treści po jego otwarciu. (I01026, b/163870541)
Wersja 1.1.0-rc02
24 czerwca 2020 r.
Usługa androidx.wear:wear:1.1.0-rc02
została zwolniona. Wersja 1.1.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Aby zachować zgodność z konwencją nazewnictwa w Androidzie, dodaliśmy do atrybutu BoxedEdges (obecnie
layout_boxedEdges
) prefikslayout_
dla atrybutuBoxInsetLayout
. Spowoduje to usunięcie błędu linter w Android Studio w przypadku tych atrybutów.
Wersja 1.1.0-rc01
14 maja 2020 r.
Usługa androidx.wear:wear:1.1.0-rc01
została udostępniona bez zmian od .1.0-beta01
. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.
Wersja 1.1.0-beta01
29 kwietnia 2020 roku
Usługa androidx.wear:wear:1.1.0-beta01
została udostępniona 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
Usługa androidx.wear:wear:1.1.0-alpha01
została zwolniona. Wersja 1.1.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Do elementu
ConfirmationActivity
dodaliśmy opcjonalny parametrEXTRA_ANIMATION_DURATION_MILLIS
, aby uwzględnić czas wyświetlania okna potwierdzenia. (adb83ce, 134523c, b/143356547)
Poprawki błędów
- Zaktualizowano
WearableActionDrawView
, aby opóźniać nadnoszenie panelu działań do momentu jego pierwszego otwarcia. (5cd32f7).