Wear

Twórz aplikacje na zegarki z Wear OS by Google.

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 -
Data ostatniej aktualizacji: 24 lipca 2024 r.

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.

Tworzenie nowego numeru

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ć z LifecycleObserver. Zastąp AmbientModeSupport 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 obiekt SwipeDismissTransitionHelper został zaktualizowany do używania elementu rysowanego w tle zamiast drugiego elementu View
  • 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 pionie
  • ArcLayout 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. Nazwa AmbientLifecycleObserverInterface została zmieniona na AmbientLifecycleObserver, a instancję można uzyskać, wywołując funkcję AmbientLifecycleObserver(...). Element isAmbient 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ć z LifecycleObserver. Wycofaj AmbientModeSupport 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 w SwipeDismissTransitionHelper, 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ń, aby MaxAngleDegrees 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 funkcja ArcLayout.Widget ma teraz atrybut setSweepAngleDegrees, który pozwala funkcji ArcLayout 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 domenie ArcLayout (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 z OAuthRequest 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 do ErrorCode (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

  • Do obiektu OAuthRequest dodano właściwość redirectUrl. (I98840, IE684D)

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 z BridgingManager 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 i BridgingConfig 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 na RemoteActivityHelper. Zmieniono nazwy funkcji RemoteIntentHelper#getRemoteIntentExtraIntent i RemoteIntentHelper#getRemoteIntentNodeId na odpowiednio RemoteActivityHelper#getTargetIntent i RemoteActivityHelper#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 na WearTypeHelper.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 elementu OngoingActivity
    • OngoingActivityData i OngoingActivityStatus nie są już częścią publicznego interfejsu API.
  • Klasy TextStatusPart i TimerStatusPart nie są już częścią publicznego interfejsu API. (I57fb6)

    • Aby utworzyć pole Part ze statycznym tekstem, użyj metody Status.TextPart.
    • Aby utworzyć Part za pomocą stopera (zliczającego), użyj Status.Stopwatch
    • Aby utworzyć Part z odliczaniem, użyj Status.Timer

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 metody androidx.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 metody Map<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 elementem onTapEvent(@TapType tapType: Int, tapEvent: TapEvent). Dodatkowo usunięto InteractiveWatchFaceClient.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 na ListenableWatchFaceMetadataClient.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 do renderWatchFaceToBitmap, lub PreviewScreenshotParams żą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 typu ListenableFuture dla usługi WatchFaceMetadataClient.createWatchFaceMetadataClient. (I5fa37)
  • UserStyleOption.getOptionForId akceptuje teraz UserStyleOption.Id zamiast tablicy bajtów. (I469be)
  • Podaj stałe BooleanOption.TRUE i BooleanOption.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 na createOnWatchEditorSession. Podobnie createHeadlessEditingSession nazywa się teraz createHeadlessEditorSession. Nazwy opakowań gujawy również zostały zmienione. (I1526b)
  • EditorSession jest teraz interfejsem, a ListenableEditorSession.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 akceptuje UserStyleSetting.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 biblioteki androidx.wear:wear-watchface. (I39e76)
  • Aby zachować spójność i przejrzystość, nazwa ComplicationProvider została zmieniona na ComplicationDataSource, a nazwy wszystkich klas z nazwą dostawcy zostały w podobny sposób zmienione. (IAP0b),
  • Element CanvasComplication.isHighlighted został przeniesiony do folderu RenderParameters.pressedComplicationSlotIds. Jest to krok w kierunku zmiany stanu CanvasComplication na bezstanowy. Aby obsługiwać tę zmianę, CanvasComplication.render przyjmuje teraz również parametr slotId jako parametr i przekazuje do GlesTextureComplication parametr ComplicationSlot. (I50e6e)
  • Do EditorRequest dodaliśmy headlessDeviceConfig. 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 jak UserStyleSchema, oraz poprawionych szczegółów dotyczących tarczy ComplicationSlots. (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ły makeUiThreadContextCurrent i makeBackgroundThreadContextCurrent zostały zastąpione przez runUiThreadGlCommands i runBackgroundThreadGlCommands, 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 do CanvasComplication, co ułatwia użytkownikom Renderer i CanvasComplication udostępnianie stanu.

  • Dla jasności zmieniliśmy nazwę Complication na ComplicationSlot, a complicationId na complicationSlotId lub complicationInstanceId w zależności od użycia

Zmiany interfejsu API

  • Dla jasności zmieniliśmy nazwę Complication na ComplicationSlot, a complicationId na complicationSlotId lub complicationInstanceId 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 i makeBackgroundThreadContextCurrent zostały zastąpione elementami runUiThreadGlCommands i runBackgroundThreadGlCommands, które akceptują Runnable. Te funkcje są potrzebne tylko wtedy, gdy musisz wykonywać wywołania GL poza renderowaniem (runBackgroundThreadGlCommands i onUiThreadGlSurfaceCreated). 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 na onBackgroundThreadGlContextCreated i onGlSurfaceCreated na onUiThreadGlSurfaceCreated. (If86d0).
  • HeadlessWatchFaceClient i Nazwa usługi InteractiveWatchFaceClient getComplicationsSlotState została zmieniona na getComplicationSlotsState. W ComplicationSlot: nazwy kategorii createRoundRectComplicationBuilder, createBackgroundComplicationBuilder i createEdgeComplicationBuilder zostały zmienione odpowiednio na createRoundRectComplicationSlotBuilder, createBackgroundComplicationSlotBuilder i createEdgeComplicationSlotBuilder. (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 i eglDisplay GlesRenderer nie mogą teraz przyjmować wartości null. Wszystkie błędy GL są teraz zgłaszane przez GlesRenderer.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ługach ShortTextComplicationData.Builder, LongTextComplicationData.Builder i RangedValueComplicationData.Builder były przekazywane do ich konstruktorów. Jeśli w polu contentDescription zostanie podana wartość ComplicationText.EMPTY, na podstawie tekstu i tytułu zostanie automatycznie wygenerowana wartość contentDescription.

  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient zgłasza teraz ServiceStartFailureException, 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 od setMinimumUnit do setMinimalTimeUnit (I20c64)
  • Stworzyliśmy ShortTextComplicationData.Builder lat, LongTextComplicationData.Builder i contentDescription, użytkownik RangedValueComplicationData.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 pole validTimeRange. Ten wywołanie metody może zostać zastąpione elementem validTimeRange.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 Pole contentDescription dla użytkownika SmallImageComplicationData.Builder jest obowiązkowe w mogą być przekazywane w konstruktorze. (I9643a)
  • Nazwa konta ProviderInfoRetriever.requestPreviewComplicationData została zmieniona na retrievePreviewComplicationData. (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 aplikacje CanvasComplicaitonDrawable, GlesTextureComplication i ComplicationHighlightRenderer do folderu wear-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 i Complication.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 i LongRangeUserStyleSetting: defaultValue, maximumValue i minimumValue to teraz usługi kotlin. Oprócz tego usunęliśmy funkcje UserStyleSetting.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 parametry outlineExpansion i outlineStrokeWidth. (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 i InteractiveWatchFaceSysUiClient zostały scalone w elementy InteractiveWatchFaceClient.

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 sieci DefaultComplicationProviderPolicy (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 teraz byte[], a nie String. (Iaa103),
  • Do przechowywania identyfikatorów UserStyleSetting i UserStyleSetting.Option są teraz odpowiednio używane UserStyleSetting.Id i UserStyleSetting.Option.Id, a nie ciąg znaków. (I63f72)
  • Nazwa konta InteractiveWatchFaceClient.SystemState została zmieniona na WatchUiState. (I6a4e0).
  • Konta InteractiveWatchFaceWcsClient i InteractiveWatchFaceSysUiClient 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 teraz Layer#COMPLICATIONS_OVERLAY, a Layer#BASE_LAYER to teraz Layer#BASE (Ia144e)
  • Nazwa usługi UserStyleListener została zmieniona na UserStyleChangeListener (I18524)
  • Nazwa usługi UserStyleRepository została zmieniona na CurrentUserStyleRepository (I6ea53)
  • Nazwa konta InteractiveWatchFaceWcsClient.updateInstance została zmieniona na updateWatchfaceInstance. (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 na CanvasComplication.loadData. (If1239).
  • Nazwa konta ComplicationsManager.bringAttentionToComplication została zmieniona na displayPressedAnimation. (IC4297).
  • WatchFaceService.createWatchFace ma teraz adnotację @UiThread. (IB54c2)
  • Zmieniliśmy nazwę parametru CanvasComplicationDrawable, aby naprawić błąd. (I50dac).
  • Dodano HeadlessWatchFaceClient.toBundle() i HeadlessWatchFaceClient.createFromBundle, aby umożliwić wysyłanie HeadlessWatchFaceClient 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 i hasCommitChanges() została zmieniona na shouldCommitChanges(). (I06e04)
  • Nazwa previewComplicationData została zmieniona na previewComplicationsData, aby wskazać, że na mapie znajduje się (zwykle) więcej niż 1 widżet. (I56c06)
  • Nazwa pliku InteractiveWatchFaceWcsClient.bringAttentionToComplication została zmieniona na displayPressedAnimation, aby zapewnić spójność z ComplicationsManager.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 na complicationsState, 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ów InteractiveWatchFaceSysUiClient i WatchFaceControlClient. (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 na openComplicationProviderChooser. (I9d441)
  • Nazwa EditorSession.createOnWatchEditingSessionAsync została zmieniona na createOnWatchEditingSession i jest teraz funkcją zawieszania. (Id257b).
  • Dodano kilka brakujących adnotacji @UiThread do pliku EditorSession. (I6935C)
  • Nazwa konta UserStyleSetting.affectsLayers została zmieniona na affectedLayers. (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 elementami CountUpTimeReference i CountDownTimeReference, 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ść to Bundle.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ą funkcji ComplicationsUserStyleSetting. (IBD9e5)
  • Nazwa konta ComplicationsManager.TapCallback.onComplicationSingleTapped została zmieniona na onComplicationTapped. (I3a55c).
  • Nazwa konta ComplicationOutlineRenderer.drawComplicationSelectOutline została zmieniona na drawComplicationOutline. (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.closeEditorumożliwia też SysUI zdalne zamknięcie edytora tarczy zegarka.
  • Oprócz tego InteractiveWatchFaceWcsClient.setUserStyle z bardziej zaawansowanym poleceniem updateInstance, 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 poleceniem updateInstance, 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 na CATEGORY_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 teraz ListenableFuture<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 na PHOTO_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ługi Complication.createRoundRectComplicationBuilder lub Complication.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 na Map<String, String> zamiast UserStyle, ponieważ trudno jest utworzyć UserStyle bez znajomości schematu, który można uzyskać dopiero po utworzeniu klienta. (IEA02a).
  • Popraw InteractiveWatchFaceWcsClient, aby używać formatu ComplicationState 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ę teraz ComplicationState i jest odpowiednio zapakowana, a wykorzystanie obsługi urządzeń do noszenia @ComplicationData.ComplicationType zostało przeniesione na Androidax ComplicationType. (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 z DeviceConfig. (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 na StyleSetting (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"
    />
    

    Przykład zakrzywionego tekstu na Androidzie Wear

  • 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>
    

    Przykład łukowego tekstu na Androidzie Wear

  • 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 API WearTypeHelper, 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 na WearTypeHelper.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 API WearTypeHelper, 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 funkcji TextView), która ustawia krój tekstu oraz styl pogrubienia i kursywy. (I4653C)
  • Nazwa WearArcLayout została zmieniona na ArcLayout, WearCurvedText na CurvedText, a z WearArcLayout.ArcLayoutWidget na ArcLayout.Widget. (I6E5CE)
    • W dniu ArcLayout.Widget zmieniono nazwę getThicknessPx na getThickness.
    • Stałe wyrównania w pionie w: ArcLayout.LayoutParams są teraz nazwa zaczynająca się od VERTICAL_ALIGN_ (zamiast poprzedniego VALIGN_)
  • CurvedTextView metody setMinSweepDegrees i setMaxSweepDegrees 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 metoda insideClickArea 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)
  • 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"
/>

Przykład zakrzywionego tekstu na Androidzie Wear

  • 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>

Przykład łukowego tekstu na Androidzie Wear

(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 na setEmojisAllowed w WearableRemoteInputExtender, 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 etykiety CharSequence zamiast String. (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 implementuje androidx.wear.input.WearableButtonsProvider, aby ułatwić testowanie aplikacji utworzonych za pomocą biblioteki androidx.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 implementuje androidx.wear.input.WearableButtonsProvider, aby ułatwić testowanie aplikacji utworzonych za pomocą biblioteki androidx.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) prefiks layout_ dla atrybutu BoxInsetLayout. Spowoduje to usunięcie błędu linter w Android Studio w przypadku tych atrybutów. (I4272f)
  • Do elementu ConfirmationActivity dodaliśmy opcjonalny parametr EXTRA_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) prefiks layout_ dla atrybutu BoxInsetLayout. 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 parametr EXTRA_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).