Wear

Apps für Wear OS by Google-Smartwatches erstellen

In dieser Tabelle sind alle Artefakte in der Gruppe androidx.wear aufgeführt.

Artefakt Stabile Version Release Candidate Beta-Ausgabe Alphaversion
Wear 1.3.0 - - 1.4.0-alpha01
Wear-Eingabe 1.1.0 - - 1.2.0-alpha02
wear-input-testing 1.1.0 - - 1.2.0-alpha02
wear-ongoing 1.0.0 - - 1.1.0-alpha01
wear-phone-interactions 1.0.1 - - 1.1.0-alpha04
wear-remote-interactions 1.0.0 1.1.0-rc01 - -
Letzte Aktualisierung dieser Mediathek: 16. Oktober 2024

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von Wear hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:

Groovy

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.1.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.1.0")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Dein Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Wear Core-Version 1.0

Version 1.0.0-alpha01

29. Mai 2024

androidx.wear:wear-core:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

API-Änderungen

  • Es wurde eine neue Klasse WearApiVersionhelper hinzugefügt, um die Laufzeit-API-Kompatibilitätsprüfung auf Wear zu unterstützen. Clients können diese statische Hilfsklasse und die bereitgestellte Methode (#isApiVersionAtLeast(VERSION)) verwenden, um die Kompatibilität zu prüfen.

Wear-Tooling-Vorschau Version 1.0

Version 1.0.0

29. November 2023

androidx.wear:wear-tooling-preview:1.0.0 wird veröffentlicht. Version 1.0.0 enthält diese Commits.

Funktionen in 1.0.0

  • Füge WearDevices zur Liste gültiger Wear-Geräte hinzu, die für UI-Vorschauen verwendet werden können.

Version 1.0.0-rc01

15. November 2023

androidx.wear:wear-tooling-preview:1.0.0-rc01 wird ohne Änderungen veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

Version 1.0.0-beta01

18. Oktober 2023

androidx.wear:wear-tooling-preview:1.0.0-beta01 wird ohne Änderungen veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Version 1.0.0-alpha01

23. August 2023

androidx.wear:wear-tooling-preview:1.0.0-alpha01 wurde veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

API-Änderungen

  • Fügen Sie WearDevices zur Liste der Wear-Geräte hinzu, die für UI-Vorschauen verwendet werden können (Ib036e)

Wear-Version 1.4

Version 1.4.0-alpha01

15. November 2023

androidx.wear:wear:1.4.0-alpha01 wird veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • ConfirmationOverlay-Symbol vertikal zentrieren, wenn keine Nachricht vorhanden ist. (I496d8)

Wear-Version 1.3

Version 1.3.0

9. August 2023

androidx.wear:wear:1.3.0 wird seit 1.3.0-rc01 unverändert veröffentlicht. Version 1.3.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.2.0

  • Migrieren Sie AmbientModeSupport zu LifecycleObserver. AmbientModeSupport wird zugunsten der neuen sitzungsspezifischen Klassen eingestellt.
  • ConfirmationOverlay mit neuen Symbolen/Layout, Schriftarten und Schriftmetriken aktualisieren
  • SwipeDismissTransitionHelper wurde aktualisiert, um ein Hintergrund-Drawable anstelle eines zweiten View zu verwenden, um Fehler bei der Verwendung des FragmentContainerView zu korrigieren
  • Die SwipeDismissFrameLayout-Animation wurde aktualisiert, damit sie mit der Wear-Plattform und den Wear Compose-Implementierungen übereinstimmt.
  • Fehlerkorrektur für SwipeDismissFrameLayout, um das versehentliche Schließen von Fragmenten mit vertikaler Ausrichtung zu vermeiden
  • ArcLayout unterstützt jetzt Erweiterungsgewichte, die ähnlich wie normale Layoutgewichte funktionieren.
  • layoutDirection auf ArcLayout unterstützen

Version 1.3.0-rc01

21. Juni 2023

androidx.wear:wear:1.3.0-rc01 wird seit 1.3.0-beta01 unverändert veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.

Version 1.3.0-beta01

7. Juni 2023

androidx.wear:wear:1.3.0-beta01 wird veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.

API-Änderungen

  • AmbientLifecycleObserver wurde nach Feedback aktualisiert. AmbientLifecycleObserverInterface wurde in AmbientLifecycleObserver umbenannt. Eine Instanz kann durch Aufrufen von AmbientLifecycleObserver(...) abgerufen werden. isAmbient ist jetzt ein Feld und keine Methode mehr. (I84b4f)

Fehlerkorrekturen

  • Nullprüfungen für Fälle hinzufügen, in denen die übergeordnete Ansicht null ist, während Alpha und Übersetzung in SwipeToDismiss zurückgesetzt werden. (Ib0ec7)

Version 1.3.0-alpha05

19. April 2023

androidx.wear:wear:1.3.0-alpha05 wird veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.

API-Änderungen

  • Migrieren Sie AmbientModeSupport zu LifecycleObserver. AmbientModeSupport wird zugunsten der neuen sitzungsspezifischen Klassen eingestellt. (I1593b)

Fehlerkorrekturen

  • Aktualisieren Sie den Ansatz für den SwipeDismissTransitionHelper-Hintergrund-Scrim, um Drawables zu verwenden, anstatt eine Ansicht hinzuzufügen, um Fehler bei der Verwendung von FragmentContainerView zu beheben. (I851cd)

Version 1.3.0-alpha04

25. Januar 2023

androidx.wear:wear:1.3.0-alpha04 wurde veröffentlicht. Version 1.3.0-alpha04 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Animation in SwipeDismissFrameLayout aktualisiert, damit sie mit der Wear-Plattform und den Wear Compose-Implementierungen übereinstimmt. (I7261b)

Version 1.3.0-alpha03

24. August 2022

androidx.wear:wear:1.3.0-alpha03 wird veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.

Neue Funktionen

  • ArcLayout unterstützt jetzt Erweiterungsgewichte, die ähnlich wie normale Layoutgewichte funktionieren. So können Sie die relative Größe von untergeordneten Elementen angeben, ohne ihre Winkel direkt berechnen zu müssen. Außerdem haben wir die Option „Bestes Ergebnis“ MaxAngleDegrees hinzugefügt, die beim Maximieren von untergeordneten Elementen mit Gewichten berücksichtigt wird. Sie können den Bogen beispielsweise mit mehreren untergeordneten Elementen mit Gewichten auf 90 Grad festklemmen. Dabei wird auch der Platz berücksichtigt, den nicht maximierte Elemente einnehmen.

API-Änderungen

  • Wir haben die Gewichtung zu ArcLayout.LayoutParams hinzugefügt, wodurch ein Widget erweitert werden kann, um den verfügbaren Bereich auszufüllen. Wenn mehr als ein Widget vorhanden ist, ist der Anteil des verfügbaren Platzes proportional zu seiner Gewichtung. Außerdem haben wir ArcLayout.setMaxAngleDegrees hinzugefügt, damit Sie die Ausweitung beispielsweise auf 90 Grad begrenzen können. Hinweis: Das Layout von untergeordneten Widgets mit fester Größe wird dadurch nicht beeinflusst. Schließlich gibt es jetzt ArcLayout.Widget mit setSweepAngleDegrees, mit dem ArcLayout ein Widget über seine Größe informieren kann, wenn das Gewicht nicht null ist. (I75f24)
  • Aktualisierte Nullbarkeit von setColorFilter(I99ddf, b/236498063)

Version 1.3.0-alpha02

23. Februar 2022

androidx.wear:wear:1.3.0-alpha02 wird veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.

Neue Funktionen

  • layoutDirection auf ArcLayout unterstützen (I14d49)
  • Verbesserte Beschreibung für den Inhalt von ConfirmationOverlay (I0fdf8)
  • Aktualisieren Sie ConfirmationOverlay mit neuen Symbolen/Layout. (If5b54)

Fehlerkorrekturen

  • ProGuard-Regeln wurden hinzugefügt, um sicherzustellen, dass umgebungsbezogener Code beibehalten wird (Idaa10).
  • Verhindern, dass Fragmente im SwipeDismissFrameLayout durch ein vertikales Wischen versehentlich geschlossen werden (Idb6d8)
  • Fehler im ConfirmationOverlay beheben, wenn keine Nachricht vorhanden ist (I63e6f)

Externer Beitrag

  • Dae Gyu LEE (Samsung) – Vermeidung des versehentlichen Schließens von Fragmenten im SwipeDismissFrameLayout durch eine vertikale Wischbewegung (Idb6d8)

Version 1.3.0-alpha01

29. September 2021

androidx.wear:wear:1.3.0-alpha01 wird veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • ConfirmationOverlay schiebt das Symbol jetzt nach oben, um längere Nachrichten unterzubringen, ohne dass die Nachricht in den Rahmen des Geräts ragt oder nicht vollständig auf dem Display angezeigt wird. (I54bff)

Wear Ongoing &Interactions Version 1.1.0

Version 1.1.0-rc01

16. Oktober 2024

androidx.wear:wear-remote-interactions:1.1.0-rc01 wird seit 1.1.0-beta01 unverändert veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Version 1.1.0-beta01

24. Juli 2024

androidx.wear:wear-remote-interactions:1.1.0-beta01 wird veröffentlicht. Version 1.1.0-beta01 enthält diese Commits. Die Version 1.3.0-beta01 von Wear Remote Interactions gibt an, dass diese Version der Bibliothek funktionsfähig ist und die API gesperrt ist (außer wenn sie als experimentell gekennzeichnet ist).

Version 1.1.0-alpha04

10. Januar 2024

androidx.wear:wear-phone-interactions:1.1.0-alpha04 wird veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.

API-Änderungen

  • Wir haben RemoteAuthClient.isRemoteAuthAvailable hinzugefügt, mit dem geprüft wird, ob Remoteauthentifizierung verfügbar ist. (Ibc10c)

Version 1.1.0-alpha02

10. Januar 2024

androidx.wear:wear-remote-interactions:1.1.0-alpha02 wurde veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

API-Änderungen

  • Wir haben RemoteActivityHelper.isRemoteActivityHelperAvailable hinzugefügt, mit dem Sie prüfen können, ob die Funktion zum Starten einer Remote-Aktivität verfügbar ist. (I107a9)
  • Der Konstruktor von RemoteActivityHelper wurde so aktualisiert, dass er mit optionalen Parametern in Java kompatibel ist. (I75554)

Version 1.1.0-alpha01

21. Juni 2023

androidx.wear:wear-remote-interactions:1.1.0-alpha01 wurde veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • Die Fertigstellung und Fehlerbehandlung in RemoteActivityHelper wurde verbessert. (I60d60)

Externer Beitrag

  • Entfernen Sie die Guava-Abhängigkeit aus wear-remote-interactions und verwenden Sie kleinere Alternativen.

Wear-Phone-Interactions Version 1.1.0-alpha03

9. März 2022

androidx.wear:wear-phone-interactions:1.1.0-alpha03 wird veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • redirectUrl von OAuthRequest gibt jetzt einen leeren String zurück, wenn die Weiterleitungs-URL nicht in der angegebenen Anfrage-URL festgelegt ist. (I44242)

Wear-Phone-Interactions Version 1.1.0-alpha02

15. Dezember 2021

androidx.wear:wear-phone-interactions:1.1.0-alpha02 wurde veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Beheben Sie die Fehler in der RemoteAuthClient-Dokumentation, einschließlich des Fehlers im Codebeispiel-Snippet und des defekten Links zu ErrorCode (I260e8).

Wear-Phone-Interactions Version 1.1.0-alpha01

15. September 2021

androidx.wear:wear-phone-interactions:1.1.0-alpha01 wurde veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Property redirectUrl wurde OAuthRequest hinzugefügt. (I98840, Ie684d)

Wear-Version „Ongoing & Interactions“ 1.0.0

Wear-Phone-Interactions Version 1.0.1

15. Dezember 2021

androidx.wear:wear-phone-interactions:1.0.1 wird veröffentlicht. Version 1.0.1 enthält diese Commits.

Fehlerkorrekturen

  • Ein Fehler wurde behoben, der von BridgingManager ausgelöst wurde, wenn versucht wurde, Bridging-Benachrichtigungen ohne excludedTags zu deaktivieren.

Wear-Phone-Interactions Wear-Remote-Interactions Version 1.0.0

15. September 2021

androidx.wear:wear-phone-interactions:1.0.0 und androidx.wear:wear-remote-interactions:1.0.0 werden freigegeben. Version 1.0.0 enthält diese Commits.

Wichtige Funktionen von 1.0.0

Die Phone Interaction Library enthält APIs für Interaktionen zwischen Wearables und Smartphones. Sie enthält Folgendes:

  • PhoneDeviceType, mithilfe derer sich der Typ des Smartphones ermitteln lässt, mit dem die aktuelle Smartwatch gekoppelt ist. Diese Methoden sind nur für Wearables verfügbar.
  • Mit den APIs BridgingManager, BridgingManagerService und BridgingConfig können Sie Benachrichtigungen zur Laufzeit aktivieren oder deaktivieren und optional Tags für Benachrichtigungen festlegen, die vom Bridging-Modus ausgenommen sind.
  • RemoteAuthClient bietet Unterstützung für die Remote-Authentifizierung auf Wearables sowie Unterstützung für das Hinzufügen der OAuth PKCE-Erweiterung. Zusätzliche Handler und Hilfsklassen für die Kommunikation werden bereitgestellt.

Die Remote Interaction Library enthält APIs für Interaktionen zwischen Wearables und Smartphones. Sie enthält Folgendes:

  • WatchFaceConfigIntentHelper, mit Hilfsfunktionen zur Angabe der ID und des Komponentennamens in den Aktivitäten zur Zifferblattkonfiguration für den Companion auf dem Smartphone.
  • RemoteActivityHelper-Klasse, die zum Öffnen von Intents auf anderen Geräten verwendet werden kann (z.B. von Smartwatch zu Smartphone).

Wear-Phone-Interactions Wear-Remote-Interactions Version 1.0.0-rc01

1. September 2021

androidx.wear:wear-phone-interactions:1.0.0-rc01 und androidx.wear:wear-remote-interactions:1.0.0-rc01 werden freigegeben. Version 1.0.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Fehler behoben, der verhinderte, dass Fehler, die in Google Play-Diensten auftreten, bei Verwendung von RemoteActivityHelper an den Aufrufer weitergegeben wurden (I60d60)
  • Es wurde ein Fehler behoben, bei dem RemoteActivityHelper sein Future nie erfüllt, wenn keine verbundenen Knoten vorhanden waren oder die angeforderte nodeId nicht gefunden wurde (I60d60).

Fortlaufende Wear OS-Version 1.1

Version 1.1.0-alpha01

23. August 2023

androidx.wear:wear-ongoing:1.1.0-alpha01 wird veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Fügen Sie der laufenden Aktivität ein Feld für die Inhaltsbeschreibung hinzu. Sie wird von Bedienungshilfen verwendet, um die laufenden Aktivitäten zu beschreiben. (I79fc6)

Fehlerkorrekturen

  • @RequiresPermission wurde APIs hinzugefügt, für die die Berechtigung POST_NOTIFICATIONS in SDK 33 und höher gewährt werden muss. (Ie542e, b/238790278)

Wear-Ongoing-Version 1.0.0

1. September 2021

androidx.wear:wear-ongoing:1.0.0 wurde veröffentlicht. Version 1.0.0 enthält diese Commits.

Wichtige Funktionen von 1.0.0

  • Die Wear Ongoing Activities API ist eine API für Entwickler, einschließlich Drittanbietern, mit der sie ihre Aktivität als „Aktuelle Aktivität“ kennzeichnen und die erforderlichen Informationen zur Verfügung stellen können.
  • „Laufende Aktivitäten“ bezieht sich auf Aktivitäten, die im Hintergrund der Smartwatch ausgeführt werden können (z.B. Trainings, Anrufe und Medien). Unter Wear 3 wird eine als aktiv deklarierte Aktivität durch ein spezielles Overlay-Symbol auf dem Zifferblatt und ein anderes Rendering im App Launcher hervorgehoben.
  • Weitere Informationen finden Sie im Leitfaden zu laufenden Aktivitäten in Wear.

Wear-Phone-Interactions Wear-Remote-Interactions Version 1.0.0-beta01

18. August 2021

androidx.wear:wear-phone-interactions:1.0.0-beta01 und androidx.wear:wear-remote-interactions:1.0.0-beta01 wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

API-Änderungen

  • Die Klasse RemoteIntentHelper wurde in RemoteActivityHelper umbenannt. Die Funktionen RemoteIntentHelper#getRemoteIntentExtraIntent und RemoteIntentHelper#getRemoteIntentNodeId wurden in RemoteActivityHelper#getTargetIntent bzw. RemoteActivityHelper#getTargetNodeId umbenannt. (Id2042)

Wear-Ongoing Version 1.0.0-rc01

18. August 2021

androidx.wear:wear-ongoing:1.0.0-rc01 wird seit 1.0.0-beta01 unverändert veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

Wear-Ongoing-Version 1.0.0-beta01

4. August 2021

androidx.wear:wear-ongoing:1.0.0-beta01 wurde veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

API-Änderungen

  • Einige Setter in OngoingActivity.Builder akzeptieren jetzt ein Nullargument, um Setter und Getter symmetrisch und konsistent zu gestalten (I17ee5)

Wear-Phone-Interactions Version 1.0.0-alpha07

4. August 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha07 wird veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

API-Änderungen

  • WearTypeHelper.isChinaDevice wurde in WearTypeHelper.isChinaBuild umbenannt. (I47302)
  • Wir haben die RemoteAuthClient-Bibliothek aktualisiert, damit die redirect_uri automatisch basierend auf dem Gerätetyp (RoW/China) ausgewählt wird. (I38866)
  • Ein Fehler wurde behoben, durch den die Umwandlung von BridgingConfig in/aus Bundle mit ClassCastException fehlschlug. Es wurden Unit-Tests für die Klasse „BridgingManagerService“ hinzugefügt. (I68ecb)

Wear-Remote-Interactions Version 1.0.0-alpha06

4. August 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha06 wurde veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Wear-Phone-Interactions Version 1.0.0-alpha06

21. Juli 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha06 wird veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

API-Änderungen

  • Die Klasse BridgingManagerSeviceBinder ist jetzt eine Unterklasse von „Service“ und wurde in „BridgingManagerService“ umbenannt. (I9fca2)
  • Die Methode RemoteAuthClient.Callback.onAuthorizationError wurde geändert, um den Parameter „OAuthRequest“ einzubinden. Für Methoden, die einen Callback erfordern, ist jetzt auch ein Executor erforderlich, auf dem der Callback ausgeführt werden soll. (I35e11)

Fehlerkorrekturen

  • Wir haben die Authentifizierungs-API klarer gestaltet, indem wir mehr dokumentierte Parameter verwendet und nach Möglichkeit Properties eingesetzt haben. (I12287)

Wear-Phone-Interactions Version 1.0.0-alpha05

30. Juni 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • Dokumentierte Parameter, die im Konstruktor für BridgingConfig.Builder übergeben werden sollten.

Wear-Ongoing Version 1.0.0-alpha06

2. Juni 2021

androidx.wear:wear-ongoing:1.0.0-alpha06 wird veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

API-Änderungen

  • Fügen Sie den laufenden Aktivitäten das Feld „Titel“ hinzu. (I7a405)

Fehlerkorrekturen

  • SerializationHelper.copy() erstellt jetzt eine defensive Kopie der Informationen (I8b276)
  • Verbesserte Dokumentation für „setCategory“ (Iff01f)

Wear-Ongoing Version 1.0.0-alpha05

18. Mai 2021

androidx.wear:wear-ongoing:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • OngoingActivity verfügt jetzt über Getter, um alle Werte abzurufen, die direkt über den Builder festgelegt wurden (oder die Standardwerte aus der zugehörigen Benachrichtigung). (Id8ac8)

    • Die neue Klasse Status wird jetzt verwendet, um den Status der OngoingActivity zu erstellen.
    • OngoingActivityData und OngoingActivityStatus sind nicht mehr Teil der öffentlichen API.
  • Die Klassen TextStatusPart und TimerStatusPart sind nicht mehr Teil der öffentlichen API. (I57fb6)

    • Wenn Sie eine Part mit statischem Text erstellen möchten, verwenden Sie Status.TextPart.
    • Wenn Sie eine Part mit einer Stoppuhr (aufwärts zählend) erstellen möchten, verwenden Sie Status.Stopwatch.
    • Wenn du eine Part mit einem Timer erstellen möchtest, verwende Status.Timer.

Wear-Ongoing Version 1.0.0-alpha04

5. Mai 2021

androidx.wear:wear-ongoing:1.0.0-alpha04 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

API-Änderungen

  • Bei „OngoingActivity“ werden die Methoden von „fromExistingOngoingActivity“ jetzt „recoverOngoingActivity“ genannt.
  • Für „OngoingActivity“ gibt es jetzt eine vollständige Reihe von Gettern, die zuvor nur unter „OngoingActivityData“ verfügbar waren. (I0ee4d)

Wear-Remote-Interactions Version 1.0.0-alpha05

21. Juli 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • Wir haben die Klasse RemoteIntentHelper hinzugefügt (früher RemoteIntent in der Wearable Support Library), die zum Öffnen von Intents auf anderen Geräten verwendet werden kann (z.B. von der Smartwatch auf dem Smartphone). (I1d7e0)

  • Die Klasse „PlayStoreAvailability“ wurde aus der AndroidX-Bibliothek entfernt. Wenn Sie feststellen möchten, ob der Play Store auf einem verbundenen Smartphone verfügbar ist, verwenden Sie die Methode androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType, um festzustellen, ob es sich um ein Android-Smartphone handelt. Verwenden Sie dann die androidx.wear.utils.WearTypeHelper.isChinaDevice-Methode, um festzustellen, ob es sich bei dem verbundenen Smartphone um ein chinesisches Gerät handelt. Wenn es sich um ein Android-Smartphone handelt und nicht um ein chinesisches Gerät, ist der Play Store verfügbar. (Ie7dec)

Wear-Phone-Interactions Version 1.0.0-alpha04

7. April 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha04 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

API-Änderungen

  • Die ErrorCode-Konstanten wurden aktualisiert, damit die neue Bibliothek abwärtskompatibel mit der Implementierung in der Wearable Support Library ist.

Fehlerkorrekturen

  • Behobene Ausnahme, die durch die neue OAuth API beim Starten einer OAuth-Sitzung verursacht wurde.

Wear-Remote-Interactions Version 1.0.0-alpha03

7. April 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha03 wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

API-Änderungen

  • PlayStoreAvailability in eine Klasse geändert, die ein zugehöriges Objekt mit statischen Methoden enthält Die Nutzung bleibt gleich.

Fehlerkorrekturen

  • Im Zusammenfassungsdokument für WatchFaceConfigIntentHelper wurde der Beispielcode mit den tatsächlichen HTML-Zeichen korrigiert.

Laufende Wear-Smartphone-Interaktionen, Version 1.0.0-alpha03

10. März 2021

androidx.wear:wear-ongoing:1.0.0-alpha03 und androidx.wear:wear-phone-interactions:1.0.0-alpha03 werden freigegeben. Version 1.0.0-alpha03 enthält diese Commits.

Neue Funktionen

  • OAuthClient von der Wearable-Supportbibliothek zu AndroidX migrieren Diese migrierte Klasse wurde in RemoteAuthClient umbenannt und bietet Unterstützung für die Remote-Authentifizierung auf Wearables sowie das Hinzufügen der OAuth PKCE-Erweiterung. Zusätzliche Handler und Hilfsklassen für die Kommunikation werden bereitgestellt.
  • Mit dem neuen Konstruktor „OngoingActivity.Builder“ können laufende Aktivitäten jetzt einer Benachrichtigung mit einem Tag zugeordnet werden.

API-Änderungen

  • Unterstützung für Benachrichtigungs-Tags in der Bibliothek für laufende Aktivitäten hinzugefügt (I653b4)
  • OAuthClient von der Wear-Supportbibliothek zu AndroidX migrieren und Unterstützung für die OAuth-PKCE-Erweiterung hinzufügen (I3eaaa)

Wear-Remote-Interactions Version 1.0.0-alpha02

10. März 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha02 wurde veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Die Klasse „PlayStoreAvailability“ wird von der Wearable Support Library zu AndroidX migriert. AndroidX bietet eine API, mit der geprüft werden kann, ob der Play Store auf dem Smartphone verfügbar ist.

Fehlerkorrekturen

  • Migration der Klasse „PlayStoreAvailability“ aus der Wearable Support Library zu AndroidX (I69bfe)

Version 1.0.0-alpha02

10. Februar 2021

androidx.wear:wear-ongoing:1.0.0-alpha02 und androidx.wear:wear-phone-interactions:1.0.0-alpha02 werden freigegeben. Version 1.0.0-alpha02 enthält diese Commits.

API-Änderungen

  • Unterstützung für komplexere Status hinzugefügt. Sie bestehen aus einer oder mehreren Vorlagen und einer Reihe von Teilen, mit denen die Platzhalter der Vorlage ausgefüllt werden. OngoingActivityStatus hat jetzt eine statische Methode zum Erstellen einfacher Status mit nur einem Teil (Text oder Timer) und einen Builder zum Erstellen komplexerer Status. (I1fe81)
  • Verschieben der BridgingManager- und BridgingConfig-Klassen aus der Wear-Supportbibliothek zu AndroidX. Diese API bietet APIs zum Aktivieren/Deaktivieren von Benachrichtigungen zur Laufzeit und optional zum Festlegen von Tags für Benachrichtigungen, die vom Bridging-Modus ausgenommen sind. (I3a17e)

Version 1.0.0-alpha01

27. Januar 2021

androidx.wear:wear-ongoing:1.0.0-alpha01, androidx.wear:wear-phone-interactions:1.0.0-alpha01 und androidx.wear:wear-remote-interactions:1.0.0-alpha01 werden losgelassen. Version 1.0.0-alpha01 enthält diese Commits.

API-Änderungen

  • Migrieren Sie die Bibliothek „Ongoing Activities“ (Laufende Aktivitäten) in eine neue untergeordnete Bibliothek: „wear-ongoing“. Klassen befinden sich jetzt im Paket „androidx.wear.ongoing“ (früher „androidx.wear.ongoingactivities“) (I7c029)

  • Erstellen Sie eine neue Supportbibliothek mit Klassen, die Interaktionen zwischen Wearables und Smartphones unterstützen. Sie wird anfangs mit Klassen aus der Wearable Support Library gefüllt. (ID5180)

  • Die Klasse „PhoneDeviceType“ aus der Wearable-Supportbibliothek zu AndroidX migrieren Die migrierte Klasse wird in PhoneTypeHelper umbenannt. Sie bietet Hilfsmethoden, mit denen sich der Typ des Smartphones bestimmen lässt, mit dem die aktuelle Smartwatch gekoppelt ist. Die Klasse kann nur auf Wearable-Geräten verwendet werden. (Ibd947)

  • Erstellen Sie eine neue Supportbibliothek mit Klassen, die Interaktionen zwischen Wearables und Smartphones unterstützen. Sie enthält zuerst Klassen, die aus der Wearable-Supportbibliothek migriert wurden. (I9deb4)

  • WatchFaceCompanion-Klasse von der Wearable-Supportbibliothek zu AndroidX migrieren Die migrierte Klasse wird in „WatchFaceConfigIntentHelper“ umbenannt. Sie bietet Hilfsfunktionen zum Angeben der ID und des Komponentennamens in den Zifferblatt-Konfigurationsaktivitäten im Companion-Modus auf dem Smartphone. Sie kann auch lokal verwendet werden, um das Zifferblatt auf dem Wearable-Gerät zu konfigurieren. (Ia455f)

Wear-Zusatzfunktionen und -Zifferblatt 1.0.0

Version 1.0.0-alpha22

15. September 2021

androidx.wear:wear-*:1.0.0-alpha22 wird veröffentlicht. Version 1.0.0-alpha22 enthält diese Commits.

Neue Funktionen

  • Die EditorSession abonniert jetzt Lebenszyklusbeobachter, sodass Sie sie nicht mehr explizit schließen müssen, wenn Ihre Aktivität endet.

API-Änderungen

  • Für EditorSession und ListenableEditorSession werden jetzt Kotlin-StateFlows für complicationSlotsState, ComplicationsPreviewData und ComplicationsDataSourceInfo verwendet. (I761d9)
  • EditorSession#userStyle ist jetzt ein MutableStateFlow<UserStyle> (I32ca9)
  • Für EditorSession.createOnWatchEditorSession wird jetzt ein Lebenszyklus-Beobachter verwendet. Er wird automatisch geschlossen, wenn onDestroy beobachtet wird. Außerdem muss für createOnWatchEditorSession nur noch die Aktivität übergeben werden. Dieselben Änderungen wurden auch auf ListenableEditorSession angewendet. (Ic6b7f)
  • Der Konstruktor von „CustomValueUserStyleSetting“ wurde in die öffentliche API reaktiviert. (I2e69a)
  • UserStyle übernimmt jetzt die Einstellungen von Map<UserStyleSetting, UserStyleSetting.Option> und MutableUserStyleSetting#put gibt die Ausnahme „domain“ aus, wenn die Einstellung nicht im Schema enthalten ist oder wenn die Option nicht mit der Einstellung übereinstimmt. (Iba40f)

Version 1.0.0-alpha21

1. September 2021

androidx.wear:wear-*:1.0.0-alpha21 wird veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.

API-Änderungen

  • Alle öffentlichen APIs für Zifferblätter, Clients, Editoren und Zusatzfunktionen verwenden jetzt java.time.Instant für Uhrzeiten anstelle von Long. Daher wurde die Mindest-API-Ebene auf 26 erhöht. (I3cd48)
  • Die APIs für Zifferblätter und Zusatzfunktionen verwenden jetzt die unveränderliche ZonedDateTime anstelle von Calendar. (I25cf8)
  • „ComplicationSlots“ wird jetzt mit „NoDataComplicationData“ initialisiert, „ComplicationSlot.complicationData“ hat jetzt immer einen Wert und „CanvasComplicationDrawable.complicationData“ kann keine Nullwerte mehr enthalten. (I4dfd6) Dadurch wird das Flackern von Zusatzfunktionen beim Wechseln zwischen Zifferblättern reduziert, aber nicht vollständig verhindert.

Version 1.0.0-alpha20

18. August 2021

androidx.wear:wear-*:1.0.0-alpha20 wird veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.

API-Änderungen

  • Wir haben der ComplicationDataSourceInfo die Funktion „createFallbackPreviewData“ hinzugefügt, die verwendet werden kann, wenn „ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData“ null zurückgibt. (I38c4d)
  • „ComplicationDataSourceUpdateRequester“ wurde in eine Schnittstelle umgewandelt, um das Mocking in Unit-Tests zu ermöglichen. Sie können einen konkreten ComplicationDataSourceUpdateRequester mit ComplicationDataSourceUpdateRequester.create() erstellen. (I7da22)
  • „RenderParameters.pressedComplicationSlotIds“ wurde durch „RenderParameters.lastComplicationTapDownEvents“ ersetzt, das die neue TapEvent-Klasse enthält. Diese enthält ein Dreifach-Array mit den X- und Y-Koordinaten des Tippens in Pixeln und einem Zeitstempel. WatchFace.TapListener.onTap wurde durch onTapEvent(@TapType tapType: Int, tapEvent: TapEvent) ersetzt. Außerdem wurde InteractiveWatchFaceClient.displayPressedAnimation entfernt. (Id87d2)
  • Explizite Anmerkung zum Thread für setImportantForAccessibility hinzugefügt (I990fa)
  • „ComplicationSlotBoundsType“ wurde zu „androidx-wear-watchface.ComplicationSlotBoundsType“ in „wear/wear-watchface“ verschoben. (I09420)
  • Wir haben die Unterstützung für das Übergeben von String-Ressourcen-IDs an „UserStyleSetting“ und „Options“ hinzugefügt. Dies ist jetzt die empfohlene Methode zum Erstellen dieser Objekte. (I03d5f)
  • Die maximale Drahtgröße eines UserStyle-Schemas wurde begrenzt. Außerdem dürfen Symbole im Schema nicht größer als 400 × 400 Pixel sein. (I3b65b)
  • Wir haben die Klasse „MutableUserStyle“ hinzugefügt, um Änderungen an UserStyle-Instanzen zu unterstützen (I95a40).
  • ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient wurde in ListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient umbenannt. (I64ce2)
  • Wir haben EditorState.previewComplicationsData so geändert, dass es nur Daten für aktivierte Zusatzfunktionen enthält. Außerdem haben wir EditorSession.DEFAULT_PREVIEW_TIME_MILLIS hinzugefügt, das bei Weitergabe an renderWatchFaceToBitmap oder PreviewScreenshotParams das Rendern mit der Standardvorschauzeit des Zifferblatts anfordert. (If7b3c)
  • Die Konstruktoren für UserStyleSetting, die CharSequence als Argument annehmen, wurden aus der öffentlichen API entfernt. Wir empfehlen stattdessen die Konstruktoren zu verwenden, für die StringResource-IDs erforderlich sind. (I8537b)
  • In CurrentUserStyleRepository.UserStyleChangeListener wird jetzt die Umwandlung von Conversion-Daten in die Analysedaten unterstützt. (I85989)

Version 1.0.0-alpha19

4. August 2021

androidx.wear:wear-*:1.0.0-alpha19 wird veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.

API-Änderungen

  • Wir haben ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient hinzugefügt, das einen ListenableFuture-Wrapper für WatchFaceMetadataClient.createWatchFaceMetadataClient bereitstellt. (I5fa37)
  • UserStyleOption.getOptionForId akzeptiert jetzt UserStyleOption.Id anstelle eines Byte-Arrays. (I469be)
  • Konstanten BooleanOption.TRUE und BooleanOption.FALSE angeben und das Erstellen von Instanzen unterbinden (I46e09)
  • Methoden im Wear-Watchface-Client, die eine RemoteException auslösen können, wurden jetzt entsprechend gekennzeichnet. (Ib8438)
  • Aus Gründen der Einheitlichkeit haben wir EditorSession.createOnWatchEditingSession in createOnWatchEditorSession umbenannt. createHeadlessEditingSession heißt jetzt createHeadlessEditorSession. Auch die Guava-Wrapper wurden umbenannt. (I1526b)
  • EditorSession ist jetzt eine Schnittstelle und ListenableEditorSession.commitChangesOnClose ist jetzt richtig delegiert. (I7dc3e)
  • Schemas für Nutzerstile mit Einstellungen oder Optionen mit sich überschneidenden IDs werden jetzt abgelehnt (Ic2715)
  • Wir haben eine überladene UserStyle.get hinzugefügt, die UserStyleSetting.Id akzeptiert. (I2aa0f)

Version 1.0.0-alpha18

21. Juli 2021

androidx.wear:wear-*:1.0.0-alpha18 wurde veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.

API-Änderungen

  • Wir haben ComplicationHelperActivity in die Mediathek androidx.wear:wear-watchface verschoben. (I39e76)
  • Aus Gründen der Einheitlichkeit und Klarheit wurde ComplicationProvider in ComplicationDataSource umbenannt. Alle Klassen mit dem Namen „Anbieter“ wurden ebenfalls umbenannt. (Iaef0b)
  • CanvasComplication.isHighlighted wurde in RenderParameters.pressedComplicationSlotIds verschoben. Dies ist ein Schritt auf dem Weg, CanvasComplication zustandslos zu machen. Um diese Änderung zu unterstützen, wird CanvasComplication.render jetzt auch slotId als Parameter übergeben und ComplicationSlot wird an GlesTextureComplication übergeben. (I50e6e)
  • Wir haben headlessDeviceConfig zu EditorRequest hinzugefügt. Wenn dieser Parameter nicht null ist, wird damit eine headless-Instanz erstellt, um die EditorSession zu unterstützen, anstatt auf die interaktive Instanz zuzugreifen. So kann der Editor für ein anderes Zifferblatt als das aktuelle aufgerufen werden. (I0a820)
  • Wir haben eine experimentelle WatchFaceMetadataClient hinzugefügt, mit der sich statische Zifferblattmetadaten wie der UserStyleSchema und feste Details zu ComplicationSlots effizient abrufen lassen. (I6bfdf)
  • Wir haben CanvasRenderer.uiThreadInit in „init“ umbenannt. (I6fff9)
  • Wir haben PreviewScreenshotParams einen optionalen neuen Parameter für EditorRequest hinzugefügt, der EditorSession anweist, beim Commit mit diesem Parameter einen Screenshot der Vorschau zu erstellen. Das Vorschaubild wird am EditorState.previewImage eingeblendet. (Ic2c16)

Fehlerkorrekturen

  • Entwickler müssen ihrem eigenen Manifest nicht mehr die ComplicationHelperActivity hinzufügen. (I6f0c2)

Version 1.0.0-alpha17

30. Juni 2021

androidx.wear:wear-*:1.0.0-alpha17 wurde veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.

Neue Funktionen

  • In GlesRenderer wurden makeUiThreadContextCurrent und makeBackgroundThreadContextCurrent durch runUiThreadGlCommands und runBackgroundThreadGlCommands ersetzt, die beide eine Runnable akzeptieren. Die Bibliothek sorgt dafür, dass immer nur ein ausführbarer GL-Befehl gleichzeitig ausgeführt wird.

  • Um die Initialisierung des Ui-Threads zu vereinfachen, haben wir CanvasRenderer.uiThreadInit hinzugefügt, das einmal im Ui-Thread aufgerufen wird, bevor Rendering-Aufrufe erfolgen. Außerdem haben wir onRendererCreated zu CanvasComplication hinzugefügt, damit Renderer und CanvasComplication den Status leichter teilen können.

  • Zur Verdeutlichung haben wir Complication in ComplicationSlot und complicationId je nach Nutzung in complicationSlotId oder complicationInstanceId umbenannt.

API-Änderungen

  • Zur besseren Verständlichkeit haben wir Complication in ComplicationSlot und complicationId je nach Verwendung in complicationSlotId oder complicationInstanceId umbenannt. Klassen, die „Complication“ verwenden, wurden ebenfalls umbenannt. Beispielsweise heißt „ComplicationsManager“ jetzt „ComplicationSlotsManager“. (I4da44)
  • In GlesRenderer wurden makeUiThreadContextCurrent und makeBackgroundThreadContextCurrent durch runUiThreadGlCommands und runBackgroundThreadGlCommands ersetzt, die beide eine Runnable akzeptieren. Diese Funktionen sind nur erforderlich, wenn Sie GL-Aufrufe außerhalb von „render“, runBackgroundThreadGlCommands und onUiThreadGlSurfaceCreated ausführen müssen. Das ist erforderlich, da es mehrere GlesRenderer mit jeweils eigenen Kontexten im selben Prozess geben kann, möglicherweise von verschiedenen Zifferblättern. Außerdem wird der Zugriff auf den freigegebenen aktuellen GL-Kontext jetzt synchronisiert. (I04d59)
  • Wir haben CanvasRenderer.uiThreadInit hinzugefügt, das einmal im UiThread aufgerufen wird, bevor Rendering-Aufrufe erfolgen. Außerdem haben wir onGlContextCreated in GlesRenderer in onBackgroundThreadGlContextCreated und onGlSurfaceCreated in onUiThreadGlSurfaceCreated umbenannt, um für mehr Klarheit zu sorgen. (If86d0)
  • HeadlessWatchFaceClient und InteractiveWatchFaceClient getComplicationsSlotState wurden in getComplicationSlotsState umbenannt. In ComplicationSlot: createRoundRectComplicationBuilder, createBackgroundComplicationBuilder und createEdgeComplicationBuilder wurden in createRoundRectComplicationSlotBuilder, createBackgroundComplicationSlotBuilder und createEdgeComplicationSlotBuilder umbenannt. (Ib9adc)
  • Wir haben „onRendererCreated“ zu CanvasComplication hinzugefügt, wodurch der Zustand von Renderer und CanvasComplication leichter geteilt werden kann. (I5e1ac)

Version 1.0.0-alpha16

16. Juni 2021

androidx.wear:wear-*:1.0.0-alpha16 wird veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.

Neue Funktionen

  • Wir haben einige Fehler im Zusammenhang mit den kürzlichen Änderungen am Thread-Modell behoben und andere Probleme mit dem Editor für Zifferblätter behoben.

Fehlerkorrekturen

  • NPE in onComplicationProviderChooserResult verhindern (b/189594557)
  • Probleme mit veralteten Oberflächen unddrawBlack (b/189452267) beheben
  • Fehler beim Zugriff auf complicationsManager.watchState (b/189457893)
  • Fehler beim Zeitlimit für Hintergrundthreads behoben (b/189445428)
  • Probleme mit dem Zifferblatt-Editor der Pre-R-Version beheben (b/189126313)
  • Direkte Boot-Parameter nicht für Änderungen am Editorstil aktualisieren (b/187177307)

Version 1.0.0-alpha15

2. Juni 2021

androidx.wear:wear-*:1.0.0-alpha15 wird veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.

Neue Funktionen

Der Großteil der Smartwatch-Oberfläche wird jetzt in einem Hintergrund-Thread initialisiert. Nach dem Laden wird das gesamte Rendering usw. jedoch im UiThread ausgeführt. Zwischen dem Laden und dem Rendern gibt es eine Speicherbarriere, sodass bei den meisten Zifferblättern nichts Besonderes erforderlich ist. Zifferblätter, die GLES verwenden, sind möglicherweise eine Ausnahme, da der Kontext threadspezifisch ist und wir zwei verknüpfte Kontexte erstellen. So ist es möglich, GL-Ressourcen (z. B. Texturen und Shader) in den Hintergrund-Thread hochzuladen und im UiThread zu verwenden.

Wir haben die Erstellung von Zifferblättern in drei Funktionen unterteilt: „createUserStyleSchema“, „createComplicationsManager“ und „createWatchFace“. Wir gehen davon aus, dass „createUserStyleSchema“ und „createComplicationsManager“ schnell sind und dass es beim Laden von Assets für „createWatchFace“ etwas dauern kann. Aus diesem Grund haben wir WatchFaceControlClient.getDefaultProviderPoliciesAndType eingeführt, das eine Zuordnung von Zusatzfunktionen-IDs zu DefaultComplicationProviderPolicies und dem Standard-Zusatzfunktionentyp zurückgibt. Das ist schneller als das Erstellen einer headless-Instanz, da das Zifferblatt nicht vollständig initialisiert werden muss, um die Abfrage auszuführen.

Schließlich werden Zusatzfunktionen jetzt mit einer CanvasComplicationFactory erstellt, die eine Lazy-Construction der CanvasComplication-Renderer ermöglicht.

API-Änderungen

  • @TargetApi wurde durch @RequiresApi ersetzt. (I0184a, b/187447093, b/187447094)
  • Wir haben WatchFaceControlClient.getDefaultProviderPoliciesAndType eingeführt, das eine Zuordnung von Zusatzfunktionen-IDs zu DefaultComplicationProviderPolicies und dem Standard-Zusatzfunktionentyp zurückgibt. Wenn möglich, wird ein schneller Pfad verwendet, bei dem kein Zifferblatt vollständig erstellt werden muss. Um dies zu vereinfachen, musste die WatchFaceService API durch zwei neue Methoden geändert werden: createUserStyleSchema und createComplicationsManager. Die Ergebnisse werden an createWatchFace übergeben. Darüber hinaus werden Zusatzfunktionen jetzt mit einer CanvasComplicationFactory erstellt, was das faszinierende Erstellen der CanvasComplication-Renderer ermöglicht. (Iad6c1)
  • Wir haben „MOST_RECENT_APP“ aus „SystemProviders“ entfernt. (I3df00)
  • ObservableWatchData ist jetzt eine versiegelte Klasse. (Ic940d)
  • CanvasComplicationFactory.create (normalerweise io-gebunden) wird jetzt für jede Zusatzfunktion in einem Hintergrund-Thread aufgerufen, bevor das Rendern des UI-Threads beginnt. Zwischen Konstruktion und Rendering gibt es eine Speicherbarriere, sodass keine speziellen Threading-Primitiven erforderlich sind. (Ia18f2)
  • Das Zifferblatt wird jetzt in einem Hintergrundthread erstellt, obwohl das gesamte Rendering im UI-Thread erfolgt. GlesRenderer unterstützt zu diesem Zweck zwei verknüpfte Kontexte. Die Rückgabe von WatchFaceControlClient.createHeadlessWatchFaceClient und WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient kann erfolgen, bevor WatchFaceService.createWatchFace abgeschlossen ist. Nachfolgende API-Aufrufe werden blockiert, bis die Initialisierung des Zifferblatts abgeschlossen ist. (Id9f41)
  • EXPANSION_DP und STROKE_WIDTH_DP sind nicht mehr in api.txt zu sehen. (I54801)
  • Es wurde festgelegt, dass „EditorSession.createOnWatchEditingSession“ eine TimeoutCancelException auslöst, wenn statt einer Nullsitzung ein Fehler auftritt. Außerdem ist der Rückgabewert von EditorRequest.createFromIntent und EditorSession.createOnWatchEditingSession jetzt NonNull. (I41eb4)

Version 1.0.0-alpha14

18. Mai 2021

androidx.wear:wear-*:1.0.0-alpha14 wurde veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.

Neue Funktionen

  • EditorSession.openComplicationProviderChooser gibt jetzt ChosenComplicationProvider zurück, das die Zusatzfunktions-ID ComplicationProviderInfo sowie ein Bundle mit allen zusätzlichen Extras enthält, die von der Anbieterauswahl zurückgegeben werden.
  • Außerdem migrieren wir kontinuierlich Code zu Kotlin. Der Großteil der Zifferblatt-API ist jetzt in Kotlin definiert.

API-Änderungen

  • Die GlesRenderer-Properties eglContext und eglDisplay dürfen jetzt nicht mehr null sein. Alle GL-Fehler werden jetzt über GlesRenderer.GlesException und nicht über RuntimeExceptions gemeldet. (Ib1005)
  • Wir haben androidx.wear.watchface.complications.rendering.ComplicationDrawable von Java zu Kotlin migriert (Ibc3eb).
  • Wir haben androidx.wear.watchface.complications.rendering.ComplicationStyle von Java zu Kotlin migriert (I3375e)
  • Wir haben für jede Zusatzfunktion in EditorSession Informationen zum Anbieter hinzugefügt. (I37f14)
  • Wir haben das Ergebnis von EditorSession.openComplicationProviderChooser um Informationen erweitert, die von den ausgewählten zurückgegeben wurden. (Iead6d)

Wear-Zusatzfunktionen und -Zifferblattversion 1.0.0-alpha13

5. Mai 2021

androidx.wear:wear-*:1.0.0-alpha13 wurde veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.

Neue Funktionen

  • Zifferblätter können neben der Uhrzeit und Zusatzfunktionen auch wichtige visuelle Elemente enthalten. Um Screenreader-Unterstützung dafür bereitzustellen, können im Zifferblatt jetzt ContentDescriptionLabels für Bedienungshilfen über die Eigenschaft „additionalContentDescriptionLabels“ des Renderers angegeben werden. Außerdem wurde der „accessibilityTraversalIndex“ zu Zusatzfunktionen hinzugefügt, um die Reihenfolge von ContentDescriptionLabels zu steuern. Dies kann durch eine ComplicationsUserStyleSetting geändert werden.

  • Um Entwickler dazu anzuregen, Screenreader sorgfältig zu berücksichtigen, müssen das contentDescription-Feld von ShortTextComplicationData.Builder, LongTextComplicationData.Builder und RangedValueComplicationData.Builder an ihre Konstruktoren übergeben werden. Wenn ComplicationText.EMPTY für contentDescription übergeben wird, wird contentDescription automatisch aus dem Text und dem Titel generiert.

  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient gibt jetzt ServiceStartFailureException zurück, wenn das Zifferblatt beim Initialisieren eine Ausnahme auslöst. Dadurch lassen sich Probleme beim Starten des Zifferblatts viel einfacher diagnostizieren.

API-Änderungen

  • Wir haben die Möglichkeit hinzugefügt, dass in ComplicationProviderInfo ein Null-Komponentenname angegeben werden kann. Dies ist erforderlich, um ältere Versionen von Wear OS zu unterstützen. (I744d2)
  • Wir haben androidx.wear.complications.SystemProviders von Java zu Kotlin migriert. (Ia1f8b)
  • Wir haben alle Klassen aus der öffentlichen API ausgeblendet, die sich in android.support.wearable.complications befinden, und bei Bedarf entsprechende Wrapper in AndroidX erstellt. (I7bd50)
  • Die Methode in TimeDifferenceComplicationText.Builder wurde von setMinimumUnit in setMinimalTimeUnit umbenannt. (I20c64)
  • Das Feld contentDescription von ShortTextComplicationData.Builder, LongTextComplicationData.Builder und RangedValueComplicationData.Builder muss jetzt im Konstruktor übergeben werden. (I8cb69)
  • Wir haben "ComplicationProviderService.onComplicationUpdate" in "onComplicationRequest" umbenannt und den gekapselten ID- und Typparameter dieser Methode in "data ComplicationRequest" umbenannt. Der entsprechende Listener wurde in „ComplicationRequestListener“ und seine Methode in „ComplicationRequestListener.onComplicationData“ umbenannt. (Iaf146)
  • Wir haben die Methode isActiveAt aus ComplicationData entfernt und stattdessen das Feld validTimeRange freigegeben. Dieser Methodenaufruf kann durch validTimeRange.contains ersetzt werden. (I65936)
  • Wir haben die Beschreibung der Methode „ComplicationProviderService.onComplicationActivated“ geändert, sodass jetzt ein „ComplicationType“ anstelle eines „int“ empfangen wird. (Idb5ff)
  • ProviderUpdateRequester von Java nach Kotlin migriert. (Ibce13)
  • GlesRender.makeContextCurrent ist jetzt öffentlich. Der Zifferblattcode muss möglicherweise GL-Aufrufe außerhalb von „render“ und „onGlContextCreated“ ausführen. Da es sowohl einen interaktiven als auch einen headless-Kontext geben kann, ist dies erforderlich. (I8a43c)
  • Bei WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient wird jetzt eine ServiceStartFailureException geworfen, wenn das Zifferblatt während der Initialisierung eine Ausnahme auslöst. Außerdem löst WatchFaceService jetzt eine Ausnahme aus, wenn createWatchFace länger als 6 Sekunden dauert. (I59b2f)
  • Wir haben die nicht verwendete ID-Eigenschaft von GlesTextureComplication entfernt. (I28958)
  • Auf dem Zifferblatt kann jetzt über die Property „additionalContentDescriptionLabels“ von Renderer ContentDescriptionLabels als Bedienungshilfen angegeben werden. Zusätzlich zur Steuerung der Reihenfolge von ContentDescriptionLabels wurde der „accessibilityTraversalIndex“ zu Zusatzfunktionen hinzugefügt. Dies kann durch eine ComplicationsUserStyleSetting geändert werden. (Ib7362)
  • Dokumentation zur Verarbeitung von Touch-Ereignissen auf dem Zifferblatt erweitern (Iaf31e)

Fehlerkorrekturen

  • EditorSession.getComplicationsPreviewData() gibt jetzt eine Karte für alle, nicht nur für nicht leere Zusatzfunktionen zurück. Für leere Zusatzfunktionen wird eine Instanz von EmptyComplicationData verwendet. (I1ef7e)

Wear-Zusatzfunktionen und -Zifferblattversion 1.0.0-alpha12

21. April 2021

androidx.wear:wear-*:1.0.0-alpha12 wird veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

Neue Funktionen

Zifferblatt-Editoren müssen Teile des Zifferblatts hervorheben, um zu erkennen, welcher Aspekt einer Uhr konfiguriert wird. Wir haben die RenderParameters erweitert, damit sowohl Stile als auch Zusatzfunktionen hervorgehoben werden können. Es gibt eine neue optionale HighlightLayer, die mit Alphatransparenz über dem Zifferblatt gelegt werden soll. Die Screenshot-APIs können diese Mattierung für Sie übernehmen oder die HighlightLayer für maximale Flexibilität separat bereitstellen. Angenommen, Sie haben einen Stil, mit dem Sie das Aussehen der Zeiger konfigurieren können. Der Renderer kann dann in seiner renderHighlightLayer einen Umriss um sie herum zeichnen.

Um die Unterstützung für Barrierefreiheit durch Anbieter von Zusatzfunktionen zu fördern, haben wir das Feld „contentDescription“ in den Klassen „PhotoImageComplicationData.Builder“, „MonochromaticImageComplicationData.Builder“ und „SmallImageComplicationData.Builder“ zu einem obligatorischen Konstruktorarugment gemacht. Zur Unterstützung von Komplikationen am Rand (um den Bildschirmrand gezeichnet) wurden ComplicationTapFilter und Complication.createEdgeComplicationBuilder hinzugefügt. Das Rendern und der Treffertest von Zusatzfunktionen am Rand werden dem Zifferblatt überlassen. Edge-Treffertests werden im Companion Editor nicht unterstützt.

API-Änderungen

  • Präfix PROVIDER_ zu Konstanten in SystemProviders hinzugefügt. (I1e773)
  • Das Feld contentDescription von PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder und SmallImageComplicationData.Builder muss jetzt im Konstruktor übergeben werden. (I9643a)
  • ProviderInfoRetriever.requestPreviewComplicationData wurde in retrievePreviewComplicationData umbenannt. (I911ee)
  • ComplicationProviderService wurde von Java zu Kotlin migriert. (I849f2)
  • Methode ComplicationProviderService.onBind ist jetzt endgültig (I39af5)
  • Wir haben die Benutzeroberfläche CanvasComplication reaktiviert und CanvasComplicaitonDrawable, GlesTextureComplication und ComplicationHighlightRenderer zu wear-watchface-complications-rendering verschoben. (I84670)
  • RenderParameters wurde umgestaltet, um das erweiterte Rendern von Highlights zu unterstützen. Es ist jetzt möglich, das Rendern von Highlights für Stile sowie für alle oder eine einzelne Zusatzfunktion anzufordern. Zusätzlich verfügen CanvasRenderer und GlesRenderer über eine neue abstrakte renderHighlightLayer -Methode, mit der vom Editor angeforderte Hervorhebungen gerendert werden können. Die Ebene wurde in „WatchFaceLayer“ umbenannt. (Ic2444)
  • ComplicationTapFilter und Complication.createEdgeComplicationBuilder unterstützen jetzt Edge-Zusatzfunktionen. Das Rendern und Treffertests von Edge-Zusatzfunktionen bleiben im Zifferblatt. Treffertests werden in Editoren nicht unterstützt. (Ia6604)
  • Für DoubleRangeUserStyleSetting und LongRangeUserStyleSetting: defaultValue, maximumValue und minimumValue sind jetzt Kotlin-Properties. Außerdem wurden UserStyleSetting.Option-Funktionen wie toBooleanOption, toCoplicationOptions, toListOption und Ähnliches entfernt. (I52899)
  • Fügen Sie den Eigenschaften des für das Zifferblatt verfügbaren Geräts die Kinngröße hinzu. (I76e1e)
  • Der Konstruktor von ComplicationHighlightRenderer akzeptiert jetzt die Parameter outlineExpansion und outlineStrokeWidth. (I87009)
  • ComplicationDrawable.getNoDataText ist jetzt Teil der öffentlichen API. (I00598)

Version 1.0.0-alpha11

7. April 2021

androidx.wear:wear-*:1.0.0-alpha11 wird veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

Neue Funktionen

  • Die APIs für Zifferblätter wurden optimiert. Die meisten Änderungen sind einfache Umbenennungen. InteractiveWatchFaceWcsClient und InteractiveWatchFaceSysUiClient wurden jedoch zu InteractiveWatchFaceClient zusammengeführt.

API-Änderungen

  • ContentDescriptionLabel.text ist jetzt ein ComplicationText-Element und nicht die alte Wearable-Supportbibliothek TimeDependentText. (I80c03)
  • Es kann nicht garantiert werden, dass SystemProviders.GOOGLE_PAY auf allen Android R-Geräten vorhanden ist. Deshalb wurde es aus der Liste entfernt. Sie können diesen Anbieter weiterhin über DefaultComplicationProviderPolicy verwenden (If01b5)
  • Aus Konsistenzgründen haben wir ComplicationUpdateCallback in ComplicationUpdateListener umbenannt. (I61ec7)
  • Die UserStyle-Unterstützung für das Wireformat wurde in Map<String, byte[]> geändert. Außerdem wurde der öffentlichen API zur besseren Übersicht eine UserStyleData-Klasse hinzugefügt, die jetzt von wear-watchface-client und wear-watchface-editor verwendet wird. Außerdem ist der Wert von „CustomValueUserStyleSetting.CustomValueOption.value“ jetzt „byte[]“ statt „String“. (Iaa103)
  • UserStyleSetting und UserStyleSetting.Option verwenden jetzt UserStyleSetting.Id bzw. UserStyleSetting.Option.Id, um ihre IDs anstelle eines Strings zu speichern. (I63f72)
  • InteractiveWatchFaceClient.SystemState wurde in WatchUiState umbenannt. (I6a4e0)
  • InteractiveWatchFaceWcsClient und InteractiveWatchFaceSysUiClient wurden zusammengeführt, da die Zuständigkeitsverteilung schwer zu erklären war (Iff3fa)
  • Die enum-Werte der Ebene wurden zur Verdeutlichung umbenannt. Layer#TOP_LAYER ist jetzt Layer#COMPLICATIONS_OVERLAY und Layer#BASE_LAYER ist jetzt Layer#BASE (Ia144e)
  • UserStyleListener wurde in UserStyleChangeListener umbenannt (I18524)
  • UserStyleRepository wurde in CurrentUserStyleRepository (I6ea53) umbenannt.
  • InteractiveWatchFaceWcsClient.updateInstance wurde in updateWatchfaceInstance umbenannt. (I321dc)
  • Die Ereignisse vom Typ „Zifferblatt – Tippen“ wurden umbenannt, um sie an „Bewegungsereignisse“/„Compose“ anzupassen. (I0dfd0)
  • „takeWatchfaceScreenshot“ wurde in „renderWatchFaceToBitmap“ und „takeComplicationScreenshot“ in „renderComplicationToBitmap“ umbenannt (Ie0697)
  • Die CanvasComplication-Oberfläche wurde zugunsten der offenen Klasse CanvasComplicationDrawable entfernt. (I1f81f)
  • WatcfaceControlServiceFactory wurde aus der öffentlichen API entfernt. (I1f8d3)
  • CanvasComplication.setData wurde in CanvasComplication.loadData umbenannt. (Wenn1239)
  • ComplicationsManager.bringAttentionToComplication wurde in displayPressedAnimation umbenannt. (Ic4297)
  • WatchFaceService.createWatchFace hat jetzt die Anmerkung @UiThread. (Ib54c2)
  • Der Name eines CanvasComplicationDrawable-Parameters wurde geändert, um einen Fehler zu beheben. (I50dac)
  • Wir haben HeadlessWatchFaceClient.toBundle() und HeadlessWatchFaceClient.createFromBundle hinzugefügt, um das Senden von HeadlessWatchFaceClient über AIDL zu unterstützen. (I07c35)
  • HeadlessWatchFaceClient und InteractiveWatchFaceClient haben jetzt ClientDisconnectListener und isConnectionAlive(), mit denen Sie feststellen können, ob die Verbindung aus irgendeinem Grund unterbrochen ist (z.B. wenn das Zifferblatt beendet wird). (Ie446d)
  • WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync ist jetzt eine Sperrfunktion und wurde in getOrCreateInteractiveWatchFaceClient umbenannt. (Ib745d)
  • EditorState.commitChanges und hasCommitChanges() wurden in shouldCommitChanges() umbenannt. (I06e04)
  • previewComplicationData wurde in previewComplicationsData umbenannt, um anzugeben, dass sich auf der Karte (in der Regel) mehr als eine Komplikation befindet. (I56c06)
  • InteractiveWatchFaceWcsClient.bringAttentionToComplication wurde in displayPressedAnimation umbenannt, um für Einheitlichkeit mit ComplicationsManager.displayPressedAnimation zu sorgen. (Ic9999)
  • Alle Instanzen der Zifferblatt-Instanz-ID wurden in einer neuen Klasse „WatchFaceId“ (I45fdf) gekapselt.
  • Die Property complicationState wurde in complicationsState umbenannt, um die Mehrzahl anzuzeigen. (Ided07)
  • Wir haben die verschiedenen Konvertierungen für Wear-Watchface-Client Binder entfernt, da sie erforderlich sein sollten. (Icc4c0)
  • Aus Gründen der Einheitlichkeit wurde EditorServiceClient so umstrukturiert, dass statt Beobachtern jetzt Listener verwendet werden. (Iec3a4)
  • Wir haben einige fehlende @Px-Annotationen zu InteractiveWatchFaceSysUiClient und WatchFaceControlClient hinzugefügt. (I3277a)
  • EditorObserverCallback wurde aus Gründen der Einheitlichkeit in EditorObserverListener umbenannt. (Ie572d)
  • EditorState.watchFaceInstanceId ist auf das API-Level von Android R und höher beschränkt und kann nicht mehr null sein. (Id52bb)
  • EditorSession.launchComplicationProviderChooser wurde in openComplicationProviderChooser umbenannt. (I9d441)
  • EditorSession.createOnWatchEditingSessionAsync wurde in createOnWatchEditingSession umbenannt und ist jetzt eine Funktion zum Pausieren. (Id257b)
  • Mehrere fehlende @UiThread-Anmerkungen zu EditorSession hinzugefügt. (I6935c)
  • UserStyleSetting.affectsLayers wurde in affectedLayers umbenannt. (I6e22b)

Version 1.0.0-alpha10

24. März 2021

androidx.wear:wear-*:1.0.0-alpha10 wurde veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Es ist jetzt möglich, Open GL-Objekte (z.B. Texturen) während „WatchFaceService.createWatchFace“ zu erstellen, da GlesRenderer jetzt einen expliziten Aufruf von „initOpenGLContext“ erfordert, der in „createWatchFace“ erfolgen kann.

API-Änderungen

  • IdAndComplicationData war etwas ungünstig und wurde aus der öffentlichen API entfernt. Klassen und Schnittstellen, die sie verwendet haben, wurden neu strukturiert. (I4c928)
  • Wir haben ReferenceTime durch CountUpTimeReference und CountDownTimeReference ersetzt, da diese Symbole selbsterklärender sind. (Ib66c6)
  • Fehlende @Px- und @ColorInt-Hinweise hinzugefügt. (I9bbc3)
  • Complication.complicationConfigExtras ist jetzt nicht mehr optional und hat standardmäßig den Wert Bundle.EMPTY. (Iad04f)
  • GlesRenderer erfordert jetzt, dass Sie nach der Baustelle initOpenGLContext aufrufen. Diese Funktion war ein internes Detail, befindet sich aber jetzt in der öffentlichen API, um früher GL-Aufrufe innerhalb von createWatchFace zu ermöglichen. (I726c2)
  • Complication.setRenderer wurde entfernt, da dies nicht mehr erforderlich sein sollte. (Ie992f)
  • Complicaiton.setComplicationBounds gehört nicht mehr zur öffentlichen API. Wenn Sie die Position einer Zusatzfunktion anpassen möchten, können Sie dies über ComplicationsUserStyleSetting tun. (Ibd9e5)
  • ComplicationsManager.TapCallback.onComplicationSingleTapped wurde in onComplicationTapped umbenannt. (I3a55c)
  • ComplicationOutlineRenderer.drawComplicationSelectOutline wurde in drawComplicationOutline umbenannt. (I14b88)

Version 1.0.0-alpha09

10. März 2021

androidx.wear:wear-complications-*:1.0.0-alpha09 und androidx.wear:wear-watchface-*:1.0.0-alpha09 werden freigegeben. Version 1.0.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Die Schnittstelle zwischen WCS/SysUI-Host und dem Zifferblatt auf der Smartwatch hat sich weiterentwickelt. Ein Bearbeiter kann jetzt feststellen, ob durch eine Stiländerung eine Zusatzfunktion aktiviert oder deaktiviert wird (aktiviert = initialEnabled plus Überschreibung aus ComplicationsUserStyleSetting). Außerdem kann SysUI mit EditorService.closeEditor bei Bedarf einen Zifferblatteditor aus der Ferne schließen.
  • Außerdem wurde InteractiveWatchFaceWcsClient.setUserStyle um den leistungsstärkeren Befehl updateInstance erweitert, mit dem sich die Instanz-ID ändern, der Stil festlegen und Komplikationen auf einmal löschen lassen.

API-Änderungen

  • Den Zifferblattbibliotheken wurden TraceEvents hinzugefügt. (I1a141)
  • ComplicationState hat jetzt eine neue Eigenschaft initiallyEnabled, mit der sich die Auswirkungen eines Stilwechsels vorhersagen lassen. (I8c905)
  • Wir haben InteractiveWatchFaceWcsClient.setUserStyle durch den leistungsfähigeren Befehl updateInstance ersetzt. Mit diesem Befehl können Sie die Instanz-ID ändern, den Stil festlegen und Zusatzfunktionen löschen. (Ife6f6)
  • Die Screenshot-APIs von WatchFaceClient komprimieren die Screenshots nicht mehr, da dies zu langsam war. Stattdessen wird die Nachbearbeitung dem Aufrufer überlassen. (Id35af)
  • Es ist jetzt möglich, einen Zifferblatteditor über EditorService.closeEditor aus der Ferne zu schließen. (Ic5aa4)
  • Anmerkungen zur Null-Zulässigkeit hinzugefügt (Ic16ed)

Version 1.0.0-alpha08

24. Februar 2021

androidx.wear:wear-*:1.0.0-alpha08 wird veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Neue Funktionen

  • Einige Zifferblätter sind auf eine oder mehrere bestimmte Zusatzfunktionen ausgelegt. Dazu haben wir die Funktion „Complication.Builder#setFixedComplicationProvider“ hinzugefügt. Wenn diese auf „true“ gesetzt ist, kann der Nutzer die Zusatzfunktion in diesem Slot nicht ändern.
  • Die Zifferblattbibliotheken sind zuerst Kotlin und verwenden Koroutinen (z.B. Sperren). Für Java-Nutzer haben wir ListenableFuture-Wrapper zur Verbesserung der Interoperabilität in den folgenden Bibliotheken bereitgestellt: wear/wear-watchface-guava, wear/wear-watchface-client-guava und wear/wear-watchface-editor-guava.

API-Änderungen

  • Wir haben die Unterstützung für das Doppeltippen auf Zusatzfunktionen entfernt, über das die Auswahl des Anbieters geöffnet wurde. Diese Funktion war bei Zifferblättern nicht üblich und hat die Implementierung der System-UI erschwert. (I3ef24)
  • ProviderInfoRetriever-Methoden können eine ServiceDisconnectedException auslösen, wenn der Binder unerwartet geschlossen wird. (Ib2cc4)
  • Ab Android 11 gibt es Einschränkungen bei der Ausführung der ProviderChooser. Außerdem möchten wir, dass Editoren mit der neuen wear-watchface-editor erstellt werden. Daher wird ComplicationHelperActivity aus der öffentlichen API entfernt. (Ib19c1)
  • Statische Methoden von „ComplicationText“ werden durch Builder ersetzt. (Ibe399)
  • Wir haben den Guave ListenableFuture-Wrapper für die verschiedenen Methoden zum Sperren der Zifferblattbibliothek eingeführt. (I16b2c)
  • Für mehr Klarheit bei der API haben wir den RenderParameters einen sekundären Konstruktor hinzugefügt, der keine Färbung erfordert. Dieser kann mit anderen LayerModes als LayerMode.DRAW_OUTLINED verwendet werden. (I497ea)
  • Zuvor unterscheidet sich „ListUserStyleSetting“ von der anderen, da es ein Standardargument hatte. Jetzt übernehmen alle StyleSetting-Unterklassenkonstruktoren zuletzt den Standardwert. (I9dbfd)
  • CanvasComplication wurde so umstrukturiert, dass eine ausgeblendete Methode verwendet wird, was die Implementierung einer Unterklasse erleichtert (I5b321)
  • „EditorResult“ wurde durch einen neuen EditorService und EditorSession.broadcastState() ersetzt, um Aktualisierungen an einen Beobachter (in der Regel SysUI) zu streamen. (Ic4370)
  • Einige Zifferblätter sind auf einer bestimmten Zusatzfunktion als integralen Bestandteil des Zifferblatts aufgebaut, bei der der Anbieter nicht vom Nutzer konfiguriert werden kann. Dazu haben wir Complication.Builder#setFixedComplicationProvider hinzugefügt. (I4509e)
  • In EditorRequest wird jetzt der Paketname anstelle des Komponentennamens angegeben, da es für die SysUI unpraktisch war, den Klassennamen des Editors abzurufen. Wir benötigen eigentlich nur den Paketnamen. (Ib6814)

Version 1.0.0-alpha07

10. Februar 2021

androidx.wear:wear-*:1.0.0-alpha07 wird veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • WatchFaceService.createWatchFace ist jetzt eine Sperrfunktion. Das bedeutet, dass das Zifferblatt den UI-Thread nicht mehr blockieren muss, während auf einen E/A-Vorgang gewartet wird. Ähnliches gilt für „wear-watchface-editor“ und „wear-complications-data“.

API-Änderungen

  • Entfernen Sie die Klasse „PhotoImage“ und verwenden Sie das Symbol direkt. (I8a70b)
  • Machen Sie den „validTimeRange“ von ComplicationData verfügbar. (I91366)
  • Bildähnliche Attribute expliziter machen. (I81700)
  • wear-watchface-editor und wear-complications-data wurden umgestellt, sodass jetzt statt coroutines suspend-Funktionen verwendet werden. Rx Java- und Future Compat-Wrapper. (If3c5f)
  • ProviderInfoRetriever wirft jetzt eine PreviewNotAvailableException, wenn requestPreviewComplicationData aufgrund von Verbindungsproblemen oder fehlender API-Unterstützung keine Vorschaudaten zurückgeben kann. (I4964d)
  • Die Funktion „WatchFaceControlService::createWatchFaceControlClient“ ist jetzt eine ausgesetzte Funktion und „getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient“ wird jetzt als „getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync“ aufgerufen und gibt Deferred<InteractiveWatchFaceWcsClient> zurück. RX Java- und Future-kompatible Wrapper folgen. (I5d461)
  • Benennen Sie CATEGORY_PROVIDER_CONFIG_ACTION in CATEGORY_PROVIDER_CONFIG um. (I7c068)
  • Die Funktion „createOnWatchEditingSession“ ist jetzt deaktiviert, da das Zifferblatt manchmal erst kurz nach Beginn der Editoraktivität verfügbar ist. (Ida9aa)
  • „WatchFaceService.createWatchFace“ ist jetzt eine Suspend-Funktion, die eine asynchrone Initialisierung ermöglicht. Bisher mussten Sie den Hauptthread blockieren. (If076a)
  • UserStyle verfügt nun über einen Array-Operator und wir haben Umwandlungshilfen zu UserStyle.Option hinzugefügt. (I35036)
  • Wir haben einen Marshalling-Fehler bei UserStyle-Netzwerkformaten behoben, der einige der instabilen versteckten APIs verändert hat. (I8be09)
  • Wir haben die Einstellung „CustomValueUserStyleSetting“ hinzugefügt, mit der Sie einen einzelnen anwendungsspezifischen String in einem UserStyle speichern können. Die standardmäßigen Zifferblatteditoren ignorieren diesen Wert. (IC04d2)
  • InstanceID wird nicht in den Intent-Extras für R und ältere Versionen von Android Wear OS übergeben, die nicht aktualisiert werden können. Um dies zu unterstützen, können wir jetzt zulassen, dass InstancID null ist. (Id8b78)
  • „EditorRequest“ enthält jetzt den „ComponentName“ des Editors, der in „WatchFaceEditorContract.createIntent“ (I3cd06) als Komponente festgelegt ist.
  • Das Zifferblatt-EditorResult enthält jetzt eine Vorschau der Zusatzfunktionsdaten, damit der Aufrufer nach der Bearbeitung einen Screenshot des Zifferblatts erstellen kann. (I2c561)

Fehlerkorrekturen

  • Es wurden toString()-Überschreibungen für UserStyle, UserStyleSetting und UserStyleSchema hinzugefügt, was die Arbeit mit diesen Klassen etwas angenehmer macht. (I9f5ec)

Version 1.0.0-alpha06

27. Januar 2021

androidx.wear:wear-*:1.0.0-alpha06 wird veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Wir haben die neue Bibliothek „wear/wear-watchface-editor“ eingeführt, mit der Zifferblattentwickler und möglicherweise OEMs einen Stil- und Zusatzfunktionseditor erstellen können. Die SysUI sendet eine Intent an das Zifferblatt, die über die neue EditorSession-Klasse auf die Zifferblattdetails zugreift und das Ergebnis über Activity.setWatchRequestResult aufzeichnet. Dazu haben wir die Funktion „ProviderInfoRetriever.requestPreviewComplicationData“ hinzugefügt, mit der Zifferblattbearbeiter Vorschaudaten für Zusatzfunktionen anfordern können. Der Vorteil von Vorschau-ComplicationData besteht darin, dass Sie im Gegensatz zu Live-Daten beim Rendern des Editors keine Berechtigungsdialogfelder anzeigen müssen. Hinweis: Wenn ein Nutzer einen Anbieter mit einer Berechtigung auswählt, wird er trotzdem aufgefordert, die Berechtigung zu gewähren.

API-Änderungen

  • „ComplicationProviderInfo“ enthält jetzt ein Feld für den „ComponentName“ des Anbieters. Die Unterstützung für dieses Feld wird WearOS zu einem späteren Zeitpunkt hinzugefügt. Bis dahin ist es null. (Id8fc4)
  • Wir haben „ProviderInfoRetriever.requestPreviewComplicationData“ hinzugefügt, mit der Zifferblatt-Editoren „ComplicationData“ in der Vorschau anfordern können. Das ist nützlich, da für Live-Komplikationen möglicherweise Berechtigungen erforderlich sind. Außerdem können Sie jetzt Vorschaudaten für nicht aktive Komplikationen anzeigen. (I2e1df)
  • „ComplicationManager“ ist jetzt ein optionaler Parameter des Konstruktors von „WatchFace“ und die Argumente wurden neu angeordnet, um dies zu ermöglichen. (I66c76)
  • Wir haben den Zusatz „Bundle“ zu Zusatzfunktionen hinzugefügt. Wenn er festgelegt ist, wird er mit der Intent-Nachricht zusammengeführt, die zum Starten der Auswahlaktivität für Anbieter gesendet wird. (Ifd4ad)
  • Wir haben eine neue wear-watchface-editor-Mediathek hinzugefügt, die auf Zifferblättern und von SysUi gehosteten Editoren unterstützt wird. SysUI startet diese Editoren, indem ein Intent gesendet wird. Der Dienst für Zifferblattaktivitäten kann die neue Klasse „EditorSession“ verwenden, um auf Zifferblattdetails zuzugreifen und das Ergebnis über „Activity.setWatchRequestResult“ zu erfassen. (I2110d)
  • LayerMode.DRAW_HIGHLIGHTED heißt jetzt LayerMode.DRAW_OUTLINED und RenderParameters.highlightComplicationId heißt jetzt RenderParameters.selectedComplicationId. Damit wird zusätzlich zu einem Umriss ein Highlight auf der angegebenen Zusatzfunktion gezeichnet. (I90a40)
  • Die Zukunft von WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient kann jetzt mit einer ServiceStartFailureException aufgelöst werden, wenn der Dienst während des Wartens auf die Erstellung des Zifferblatts beendet wird. (I0f509)
  • EditorSession.complicationPreviewData ist jetzt ein ListenableFuture, da das Abrufen dieser Daten ein asynchroner Vorgang ist. (Iead9d)

Fehlerkorrekturen

  • Wir entfernen nicht verwendete Felder aus „ComplicationOverlay“ und lassen „enabled“ und „complicationBounds“ unverändert. (I17b71)

Version 1.0.0-alpha05

13. Januar 2021

androidx.wear:wear-*:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Neue Funktionen

Zifferblätter unterstützen oft eine Reihe von Zusatzfunktionen mit unterschiedlicher Anzahl angezeigter Zusatzfunktionen. Zur Vereinfachung der Einrichtung unterstützen wir jetzt auch zu Beginn deaktivierte Zusatzfunktionen. Dazu wird setEnabled(false) auf den Builder angewendet. Diese können später über ComplicationsUserStyleSetting aktiviert werden.

API-Änderungen

  • Für „ComplicationHelperActivity“ wird jetzt Collection<ComplicationType> statt eines Int-Arrays akzeptiert, was die Verwendung vereinfacht. (I1f13d)
  • ProviderInfoRetriever.retrieveProviderInfo gibt jetzt korrekt ListenableFuture<ProviderInfo[]> zurück. (If2710)
  • Sie können jetzt eine anfänglich deaktivierte Zusatzfunktion erstellen, indem Sie setEnabled(false) auf den Builder aufrufen. (Idaa53)
  • „WatchFaceState“ hat jetzt die Eigenschaft „isHeadless“, die nur für headless-Instanzen wahr ist. (Ifa900)
  • ComplicationDrawable unterstützt jetzt optional das synchrone Laden von Drawables. Sie wird von den Screenshot-APIs verwendet. (I34d4a)

Version 1.0.0-alpha04

16. Dezember 2020

androidx.wear:wear-*:1.0.0-alpha04 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Die Wear OS-Bibliothek für Zifferblätter unterstützt jetzt die Festlegung von Grenzwerten pro Typ. Sie können beispielsweise zu einem breiten Begrenzungsrahmen für ComplicationType.LONG_TEXT wechseln, während Sie für andere Typen einen kleineren Begrenzungsrahmen verwenden.

API-Änderungen

  • Für Zusatzfunktionen wird jetzt „ComplicationBounds“ verwendet, das ein Map<ComplicationType, RectF> umschließt, um die Größe je nach Zusatzfunktionstyp zu unterstützen. (I1ebe7)
  • Mit RenderParameters können Sie jetzt die Hervorhebungsfarbe für Screenshots angeben. (Iff42b)
  • Mit Ausnahme von Begrenzungen müssen Sie jetzt „ComplicationsUserStyleSetting“ verwenden, um Zusatzfunktionen zu ändern. So wird sichergestellt, dass das Betriebssystem synchronisiert bleibt. (I8dc5d)
  • Renderer ist jetzt eine versiegelte Klasse. Das bedeutet, dass CanvasRenderer und GlesRenderer jetzt innere Klassen von Renderer sind. (Iab5d4, b/173803230)
  • CanvasComplicationDrawable.drawHighlight in drawOutline umbenannt ObservableWatchData enthält jetzt einige fehlende UiThread-Anmerkungen. ScreenState wurde vollständig aus WatchState entfernt. (If1393)
  • Das Mindest-API-Level für Wear-Zifferblätter ist jetzt 25. Hinweis: Für die Hardware-Canvas-Unterstützung ist API-Level 26 oder höher erforderlich. (Ic9bbd)
  • InteractiveWatchFaceWcsClient hat jetzt die Hilfsfunktion „getComplicationIdAt“. (I05811)
  • Die API-Ebene für den Wear-Watchface-Client wurde auf 25 reduziert. Für die Screenshot-APIs ist jedoch API-Ebene 27 erforderlich. (Id31c2)

Fehlerkorrekturen

  • Wir zeigen nun den aktuellen ComplicationData-Typ der Zusatzfunktion in "ComplicationState" an. (I9b390)
  • InteractiveWatchFaceWcs hat jetzt die Methode „bringAttentionToComplication“, mit der die angegebene Zusatzfunktion kurz hervorgehoben wird. (I6d31c)
  • InteractiveWatchFaceWcsClient#setUserStyle hat jetzt eine Überladung, die Map<string, string=""> akzeptiert. Dadurch kann möglicherweise ein zusätzlicher IPC-Rückgabevorgang vermieden werden, der zum Erstellen von UserStyle erforderlich ist. (I24eec)</string,>

Version 1.0.0-alpha03

2. Dezember 2020

androidx.wear:wear-*:1.0.0-alpha03 wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

Neue Funktionen

Die Klasse „Complication“ hat jetzt die Eigenschaft „complicationData“, mit der Zifferblätter Änderungen an „ComplicationData“ beobachten können. Dadurch können die Abmessungen der Zusatzfunktion je nach Art der Zusatzfunktion geändert werden.

Variable Framerates werden jetzt durch Zuweisen zu „Renderer.interactiveDrawModeUpdateDelayMillis“ unterstützt. Bei Zifferblättern, auf denen jede Sekunde kurze Animationen laufen, kann dies zu einer erheblichen Energieeinsparung führen, da das Display in den Ruhemodus versetzt wird, wenn keine Animationen laufen.

API-Änderungen

  • BACKGROUND_IMAGE wurde zusammen mit den zugehörigen Klassen in PHOTO_IMAGE umbenannt. Diese Zusatzfunktion wird nicht nur für den Hintergrund verwendet, daher wurde der Name geändert. (I995c6)
  • „DefaultComplicationProviderPolicy“ ist korrekt mit IntDefs gekennzeichnet. (I3b431)
  • Die ausgeblendete Klasse „TimeDependentText“ wird nicht mehr über „ContentDescriptionLabel“ bereitgestellt. Stattdessen fügen wir einen Zugriffsmethode hinzu, um den Text zu einer bestimmten Zeit abzurufen. (Ica692)
  • Der Konstruktor von ObservableWatchData ist jetzt intern. (I30121, b/173802666)
  • Die Zusatzfunktion hat jetzt „complicationData“, mit der sich Änderungen an „complicationData“ auf dem Zifferblatt beobachten lassen. Die Zusatzfunktion hat außerdem einen neuen Aufruf „isActiveAt“, mit dem ermittelt werden kann, ob etwas zum angegebenen Datum und Uhrzeit gerendert werden soll. (Ic0e2a)
  • Die leere SharedMemoryImage ist nicht mehr in der öffentlichen API enthalten. (I7ee17)
  • WatchFace.overridePreviewReferenceTimeMillis hat jetzt eine IntRange-Anmerkung und der Getter und Setter haben einheitliche Namen. (Ia5f78)
  • Complication.Builder wird jetzt zur Verdeutlichung über Complication.createRoundRectComplicationBuilder oder Complication.createBackgroundComplicationBuilder erstellt (I54063).
  • Es wurde „WatchFace.TapListener“ hinzugefügt, mit dem das Zifferblatt Tippen erfassen kann, die nicht von Zusatzfunktionen genutzt werden. (Ic2fe1, b/172721168)
  • Das Zifferblatt unterstützt jetzt variable Frameraten, indem Sie Renderer.interactiveDrawModeUpdateDelayMillis zuweisen. Dies kann die Akkulaufzeit verlängern, indem der Ruhemodus beendet wird, wenn keine Animation aktiviert ist. (I707c9)
  • WatchFace.Builder ist nicht mehr erforderlich und invalidate() und interactiveUpdateRateMillis wurden in den Renderer verschoben. (I329ea)
  • Die Getter für boolesche Eigenschaften in WatchState wurden umbenannt, um die Java-Interoperabilität zu verbessern (I6d2f1).
  • TapListener wurde aus Konsistenzgründen in TapCallback und InvalidCallback in InvalidateListener umbenannt. (I9414e)
  • Die Stiloptionen für das Wear 2.0-Zifferblatt wurden zur Verdeutlichung in eine eigene Klasse verschoben. Die Setter von WatchFace.Builder haben jetzt symmetrische Getter der WatchFace-Klasse. Iefdfc
  • Es wurden InteractiveWatchFaceWcsClient und WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient hinzugefügt, die entweder eine vorhandene Instanz abrufen oder erstellen, sobald der Hintergrunddienst eine Verbindung hergestellt und die Engine erstellt hat. (Id666e)
  • WatchFaceControlClient ist jetzt eine Schnittstelle für Tests zur Simulation. (I875d9)
  • HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl und InteractiveWatchFaceWcsClient sind jetzt Schnittstellen, die das Testen erleichtern. (I7cdc3)
  • Anmerkungen zu Methoden in wear-watchface-complications-rendering hinzugefügt (I0d65c)

Fehlerkorrekturen

  • Displayform aus DeviceConfig entfernen, die android.content.res.Configuration#isScreenRound() dupliziert hat (Ifadf4)
  • Bei WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient wird jetzt ein Map<String, String> statt ein UserStyle akzeptiert, da es schwierig ist, ein UserStyle zu erstellen, ohne das Schema zu kennen, das erst nach der Erstellung des Clients verfügbar ist. (Iea02a)
  • Korrigieren Sie InteractiveWatchFaceWcsClient, damit ComplicationState anstelle des Wire-Formats verwendet wird. (Icb8a4)
  • UserStyleSettings ist jetzt eine versiegelte Klasse, da die Zifferblatt-Editoren nur die integrierten Klassen verstehen. (I2d797)

Version 1.0.0-alpha02

11. November 2020

androidx.wear:wear-*:1.0.0-alpha02 wird veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

API-Änderungen

  • ComplicationDetails heißt jetzt ComplicationState, ist korrekt gewickelt und die Verwendung der Wearables-Unterstützung @ComplicationData.ComplicationType wurde zu androidx ComplicationType migriert. (I4dd36)
  • Fügen Sie den RenderParameters einen optionalen highlightedComplicationId-Parameter hinzu, mit dem Sie das Hervorheben einer einzelnen Zusatzfunktion in Screenshots anfordern können. (I66ce9)
  • ComplicationProviderService für Konsistenz die neue Zusatzfunktions-API verwenden (Id5aea)
  • getPreviewReferenceTimeMillis ruft jetzt Referenzzeiten von DeviceConfig ab. (I779fe)
  • Zur Vereinfachung der Oberfläche der Renderer API können Sie stattdessen SurfaceHolder.Callback verwenden, um Änderungen zu beobachten. (I210db)
  • CanvasComplicationRenderer ist nicht eine Erweiterung von Renderer und wird umbenannt, um dies zu verdeutlichen. (Ibe880)

Fehlerkorrekturen

  • Erste Version von androidx.wear:wear-watchface-client (I1e35e)
  • Der Name von GlesTextureComplication#renderer wurde zugunsten der Verständlichkeit geändert (Ib78f7).
  • StyleCategory in StyleSetting umbenennen (I488c7)
  • Hinzufügen von UserStyleSchema für eine übersichtlichere API (If36f8)

Version 1.0.0-alpha01

28. Oktober 2020

androidx.wear:wear-complications-*:1.0.0-alpha01 und androidx.wear:wear-watchface-*:1.0.0-alpha01 werden freigegeben. Version 1.0.0-alpha01 enthält diese Commits.

API-Änderungen

  • Einige Elemente wurden entfernt, die nicht für die öffentliche API vorgesehen waren. (I41669)
  • androidx.wear:wear-complications-provider-Bibliothek erstellen (I77f1f)
  • ComplicationsUserStyleCategory ist die neue empfohlene Kategorie für die Konfiguration von Zusatzfunktionen (I96909)
  • Wear OS-Komplikationsdaten-API hinzufügen (I7c268)
  • Funktionen mit booleschen Werten, denen das Präfix „is“ statt „get“ vorangestellt wird (If36ff)
  • Gemäß den API-Richtlinien sollte der Parameter „protected“ nicht verwendet werden. Daher wurde diese Klasse so umgestaltet, dass Parameter über den Konstruktor übergeben werden. (I61644)
  • setBackgroundComplication wurde umbenannt, um Verwechslungen zu vermeiden. (I96fe3)
  • Kotlin-Properties für „isHighlighted“ und „data“ von „ComplicationDrawable“ verwenden (I4dcc8)
  • Anstelle von „ComplicationRenderer.InvalidateCallback“ wird „Complication#invalidate()“ hinzugefügt (I4f4c6).
  • Diese APIs werden in WearableSupport eingestellt und hier entfernt. (Ib425c)
  • Einige WatchFace-Builder-Methoden wurden umbenannt, um den Wear 2.0-Legacy-Charakter zu betonen. (Idb775)
  • Erster Beta-API-Kandidat für Wear/Wear-Zifferblatt (Id3981)
  • Erste erfasste Version der API. (Ie9fe6)
  • ComplicationDrawable.BorderStyle IntDef richtig ausblenden und aus Gründen der Einheitlichkeit zu ComplicationStyle wechseln (I27f7a)
  • Fehlende Anmerkungen für ComplicationStyle-Methoden hinzufügen (I838fd)
  • Diese Bibliothek hat keine öffentliche API-Oberfläche (I88e2b)
  • Alle Optionenklassen für Stilkategorien sind jetzt endgültig. (Ib8323)
  • Erste erfasste Version der API. (I27c85)

Fehlerkorrekturen

  • Der ComplicationProviderService wurde um eine explizite Methode „getComplicationPreviewData“ ergänzt. (I4905f)
  • API-Lint-Prüfung für MissingGetterMatchingBuilder ist für Androidx aktiviert (I4bbea, b/138602561).
  • Benennen Sie „wear-complications-rendering“ um. (Ifea02)
  • Anzeigenamen von Stilkategorien sind jetzt CharSequences (I28990)
  • „Override“ (Überschreiben) wird durch „Overlay“ ersetzt, um den aktuellen Benennungskonventionen für Themen und Stile zu entsprechen. (I4fde9)
  • Zur besseren Verständlichkeit wurde UserStyle#getOptions umbenannt. (I695b6)

Version 1.2.0

Version 1.2.0

15. September 2021

androidx.wear:wear:1.2.0 wird veröffentlicht. Version 1.2.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.1.0

  • Die Komponente „CurvedText“ wurde hinzugefügt, um leicht gekrümmten Text zu schreiben, der der Krümmung des größten Kreises folgt, der in die Ansicht eingeschrieben werden kann. Anwendungsbeispiel:

    <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"
    />
    

    Beispiel für gekrümmten Text in Android Wear

  • Der ArcLayout-Container wurde hinzugefügt, um seine untergeordneten Elemente einzeln in einem Bogen entweder im oder gegen den Uhrzeigersinn anzuordnen. Seine untergeordneten Elemente können sowohl Standard-Android-Widgets als auch „gekurvte“ Widgets sein, die die ArcLayout.Widget-Benutzeroberfläche implementieren. (I536da) Anwendungsbeispiel:

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

    Beispiel für einen Bogentext in Android Wear

  • Ein neuer Layout-Container, DismissibleFrameLayout, wurde hinzugefügt, der für die Verwendung innerhalb einer Aktivität das Schließen der Schaltfläche "Zurück" und/oder das Wischen zum Schließen handhabt. Es muss mindestens ein Listener hinzugefügt werden, der auf eine Schließungsaktion reagiert. Ein Listener entfernt in der Regel eine beinhaltende Ansicht oder ein Fragment aus der aktuellen Aktivität. Mit setSwipeDismissible(boolean) und setBackButtonDismissible(boolean) werden Funktionen direkt gesteuert. Dieses neue Layout soll das vorhandene SwipeDismissFrameLayout ersetzen.

  • In der Klasse „AmbientModeSupport“ wurde die Unterstützung hinzugefügt, dass eine Aktivität automatisch fortgesetzt werden kann, wenn das Gerät den Inaktivmodus verlässt. Diese Funktion war zuvor in der eingestellten WearableActivity-Klasse der WearableSupportLibrary verfügbar. (I336ab)

  • Migrierte WearableCalendarContract-Klasse aus der Wearable-Supportbibliothek. Diese API stellt einen Teil der Daten bereit, die über CalendarContract verfügbar sind, wird aber automatisch mit Wearables synchronisiert. (I6f2d7)

  • In androidx.wear.utils wurde die neue API WearTypeHelper hinzugefügt, um zu ermitteln, ob das angegebene Wear-Gerät für China bestimmt ist. (Ib01a9)

  • androidx.wear.widget.ConfirmationOverlay bietet jetzt Bedienungshilfen, mit denen Nachrichten vorgelesen werden, wenn sie festgelegt sind, gefolgt von einer Beschreibung der Animation. (I524dd)

  • Fehler behoben, der dazu führte, dass ConfirmationActivity abstürzte, wenn keine Nachricht angegeben wurde. (Ie6055)

  • Es wurde ein Fehler behoben, bei dem das horizontale Scrollen von RecyclerViews dazu führte, dass WearableDrawerLayout alle Interaktionen anhob. (I24c7f)

Version 1.2.0-rc01

1. September 2021

androidx.wear:wear:1.2.0-rc01 wird ohne Änderungen seit der letzten Betaversion veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.

Version 1.2.0-beta01

18. August 2021

androidx.wear:wear:1.2.0-beta01 wird veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.

Fehlerkorrekturen

  • Fehler behoben, der dazu führte, dass ConfirmationActivity abstürzte, wenn keine Nachricht angegeben wurde. (IE6055)

Version 1.2.0-alpha13

4. August 2021

androidx.wear:wear:1.2.0-alpha13 wird veröffentlicht. Version 1.2.0-alpha13 enthält diese Commits.

API-Änderungen

  • WearTypeHelper.isChinaDevice wurde in WearTypeHelper.isChinaBuild umbenannt. (I47302)

Fehlerkorrekturen

  • Wir haben androidx.wear.widget.ConfirmationOverlay um Funktionen zur Barrierefreiheit erweitert, mit denen Nachrichten vorgelesen werden, wenn sie eingerichtet sind, gefolgt von einer Beschreibung der Animation. (I524dd)

Version 1.2.0-alpha12

21. Juli 2021

androidx.wear:wear:1.2.0-alpha12 wird veröffentlicht. Version 1.2.0-alpha12 enthält diese Commits.

API-Änderungen

  • Wir haben in androidx.wear.utils die neue API WearTypeHelper hinzugefügt, um zu ermitteln, ob das betreffende Wear-Gerät für China bestimmt ist. (Ib01a9)

Version 1.2.0-alpha11

30. Juni 2021

androidx.wear:wear:1.2.0-alpha11 wurde veröffentlicht. Version 1.2.0-alpha11 enthält diese Commits.

Fehlerkorrekturen

  • Ein Fehler wurde behoben, durch den bei horizontal scrollenden RecyclerViews alle Interaktionen von WearableDrawerLayout erfasst wurden. (I24c7f)

Version 1.2.0-alpha10

2. Juni 2021

androidx.wear:wear:1.2.0-alpha10 wird veröffentlicht. Version 1.2.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Alpha10 verbessert die Unterstützung von Bedienungshilfen in Curved Text und ArcLayouts. Außerdem wurden einige kleinere Umbenennungen im DismissibleFrameLayout vorgenommen, um die API zu verdeutlichen.

API-Änderungen

  • Wir haben die folgenden Methoden in DismissibleFrameLayout (Ib195e) umbenannt:
    • Callback#onDismissed -> Callback#onDismissedFinished
    • isSwipeDismissible -> isDismissableBySwipe
    • isBackButtonDismissible -> isDismissableByBackButton
  • Die folgenden Methoden wurden endgültig festgelegt (Ib195e):
    • setBackButtonDismissible
    • setSwipeDismissible
    • registerCallback
    • unregisterCallback

Fehlerkorrekturen

  • Verwenden Sie den Inhalt der CurvedTextView in TalkBack. (I05798)
  • Bessere Zugänglichkeit für normale Ansichten in einem ArcLayout. (I4418d)

Version 1.2.0-alpha09

18. Mai 2021

androidx.wear:wear:1.2.0-alpha09 wurde veröffentlicht. Version 1.2.0-alpha09 enthält diese Commits.

API-Änderungen

  • Neue Funktion CurvedTextView.setTypeface() (ähnlich wie TextView) zum Festlegen der Schriftart und des Stils (Fettdruck/Kursivschrift) hinzugefügt. (I4653c)
  • WearArcLayout wurde in ArcLayout, WearCurvedText in CurvedText und WearArcLayout.ArcLayoutWidget in ArcLayout.Widget umbenannt. (I6e5ce)
    • Am ArcLayout.Widget wurde getThicknessPx in getThickness umbenannt.
    • Konstanten für die vertikale Ausrichtung in ArcLayout.LayoutParams beginnen jetzt mit VERTICAL_ALIGN_ (anstelle des vorherigen VALIGN_)
  • Am CurvedTextView wurden die Methoden setMinSweepDegrees und setMaxSweepDegrees durch setSweepRangeDegrees ersetzt (I7a9d9).

Version 1.2.0-alpha08

5. Mai 2021

androidx.wear:wear:1.2.0-alpha08 wird veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.

API-Änderungen

  • Um den Code verständlicher zu machen, haben wir einigen Winkelparametern und Rückgabetypen @FloatRange-Anmerkungen hinzugefügt. (I430dd)
  • In der Schnittstelle WearArcLayout.ArcLayoutWidget heißt die Methode insideClickArea jetzt isPointInsideClickArea. (Ia7307)

Version 1.2.0-alpha07

24. März 2021

androidx.wear:wear:1.2.0-alpha07 wird veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.

Fehlerkorrekturen

  • Fehler mit nicht gekrümmten untergeordneten Elementen innerhalb von WearArcLayout wurden behoben, die durch die Verwendung der Bildschirmgröße verursacht wurden, deren Höhe größer als Breite ist. Diese nicht gebogenen untergeordneten Elemente werden jetzt auf allen Bildschirmtypen korrekt innerhalb eines Bogens platziert.

Version 1.2.0-alpha06

27. Januar 2021

androidx.wear:wear:1.2.0-alpha06 wird veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.

API-Änderungen

  • Migrieren Sie die Bibliothek „Laufende Aktivitäten“ zu einer neuen Unterbibliothek: „Wear-ongoing“. Klassen befinden sich jetzt im Paket „androidx.wear.ongoing“ (früher „androidx.wear.ongoingactivities“) (I7c029)
  • Migrieren Sie die WearableCalendarContract-Klasse von der Wearable Support Library zu AndroidX. Diese API stellt eine Teilmenge der über CalendarContract verfügbaren Daten bereit, wird aber automatisch mit Wearable-Geräten synchronisiert. (I6f2d7)

Fehlerkorrekturen

  • Deaktivieren Sie standardmäßig die Funktion zum Schließen über die Schaltfläche „Zurück“ im FrameLayout, da das Wischen zum Schließen weiterhin die Hauptmethode zum Zurückkehren zu einem Vollbild auf Wearables ist (Ic24e3)
  • Einige Probleme bei der Handhabung der Sichtbarkeit von Kindern unter WearArcLayout (Icf912) wurden behoben.

Version 1.2.0-alpha05

13. Januar 2021

androidx.wear:wear:1.2.0-alpha05 wird veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • Aktualisieren Sie die Javadoc-Datei der Klasse „AmbientModeSupport“, um Beispiel-Snippets zur besseren Veranschaulichung der allgemeinen Verwendung dieser Klasse bereitzustellen.

Version 1.2.0-alpha04

16. Dezember 2020

androidx.wear:wear:1.2.0-alpha04 wird veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.

API-Änderungen

  • In der Klasse „AmbientModeSupport“ wurde die Unterstützung hinzugefügt, dass eine Aktivität automatisch fortgesetzt werden kann, wenn das Gerät den Inaktivmodus verlässt. Diese Funktion war zuvor in der eingestellten WearableActivity-Klasse in der WearableSupportLibrary verfügbar. (I336ab)
  • OngoingActivity
    • Beim Erstellen einer laufenden Aktivität kann jetzt eine Kategorie festgelegt werden, z.B. OngoingActivitiy.Builder.getCategory(String)
    • „OngoingActivityData“ enthält jetzt einen Zeitstempel für die Erstellung der „OngoingActivity“ – OngoingActivityData.getTimestamp().
    • (I91cb4)
  • Das Festlegen von Rändern für untergeordnete WearArcLayout-Elemente wurde hinzugefügt, indem die Layoutparameter geändert wurden, um MarginLayoutParams zu erweitern, d.h. WearArcLayout.LayoutParams erweitert android.view.ViewGroup.MarginLayoutParams. (I2cd88)
  • Der Standardwert für den Ankertyp von WearCurvedTextView wurde von WearArcLayout.ANCHOR_START auf WearArcLayout.ANCHOR_CENTER geändert. Dadurch wird die Koordination zwischen dem Bogenlayout und dem gekrümmten Text vereinfacht, da der gekrümmte Text standardmäßig oben mittig ausgerichtet wird und das übergeordnete Bogenlayout ihn an die gewünschte Stelle drehen kann. (I105ff)

Version 1.2.0-alpha03

2. Dezember 2020

androidx.wear:wear:1.2.0-alpha03 wird veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.

Neue Funktionen

Ein neuer Layout-Container „DismissibleFrameLayout“, der das Schließen über die Rückwärtstaste und/oder Wischen zum Schließen verarbeitet und für die Verwendung in einer Aktivität vorgesehen ist. Es muss mindestens ein Listener hinzugefügt werden, der auf eine Schließungsaktion reagiert. Ein Listener entfernt normalerweise eine enthaltene Ansicht oder ein Fragment aus der aktuellen Aktivität. Mit den Funktionen „setSwipeDismissible(boolean)“ und „setBackButtonDismissible(boolean)“ können Sie die Funktionen direkt steuern. Dieses neue Layout soll das vorhandene SwipeDismissFrameLayout ersetzen.

Bei gekrümmten Widgets werden jetzt Touch-Ereignisse verarbeitet. Normale Widgets in einem WearArcLayout erhalten alle Touch-Ereignisse, die ihrem Koordinatenraum zugeordnet sind. WearCurvedTextView (in einem WearArcLayout- oder nicht) kann onClick- und onLongClick-Handler festlegen.

Für Klassen mit laufenden Aktivitäten werden jetzt VersionedParcelables verwendet, anstatt benutzerdefinierte Serialization/Deserialization zu verwenden. Das statische Symbol und die Touch-Intention sind jetzt erforderlich.

API-Änderungen

  • Das Attribut „sweepDegrees“ für WearCurvedTextView wird in „minSweepDegrees“ und „maxSweepDegrees“ unterteilt, um ein flexibleres Layout dieses Widgets zu ermöglichen.

Version 1.2.0-alpha02

11. November 2020

androidx.wear:wear:1.2.0-alpha02 wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.

Mit dieser Version wird erstmals die neue „Ongoing Activities API“ eingeführt. Mit dieser API können Entwickler signalisieren, dass eine lang andauernde Aktivität wie ein Fitnesstraining oder eine Medienwiedergabesitzung gerade ausgeführt wird. So können Entwickler regelmäßige Statusaktualisierungen wie „Gelaufene Strecke und Zeit“ oder „Aktuell wiedergegebener Titel“ auf dem Zifferblatt oder im App Launcher anzeigen lassen. Diese Funktion ist auf zukünftige Geräte ausgerichtet, auf denen die Funktion für laufende Aktivitäten aktiviert ist.

API-Änderungen

  • Neue API für laufende Aktivitäten. Auf nicht unterstützten Geräten wird keine Aktion ausgeführt. (I69a31)

Version 1.2.0-alpha01

28. Oktober 2020

androidx.wear:wear:1.2.0-alpha01 wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Die Komponente „WearCurvedTextView“ wurde hinzugefügt, um leicht gekrümmten Text zu schreiben, der der Krümmung des größten Kreises folgt, der in die Ansicht eingeschrieben werden kann. Anwendungsbeispiel:
<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"
/>

Beispiel für gekrümmten Text in Android Wear

  • Es wurde ein WearArcLayout-Container hinzugefügt, mit dem die untergeordneten Elemente nacheinander auf einem Bogen entweder im oder gegen den Uhrzeigersinn angeordnet werden können. Die untergeordneten Elemente können sowohl ein Android-Standard-Widget als auch gebogene Widgets sein, die die ArcLayoutWidget-Oberfläche implementieren. Anwendungsbeispiel:
<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>

Beispiel für Bogentext in Android Wear

(I536da)

Wear-Input 1.2

Version 1.2.0-alpha02

29. September 2021

androidx.wear:wear-input:1.2.0-alpha02 und androidx.wear:wear-input-testing:1.2.0-alpha02 werden freigegeben. Version 1.2.0-alpha02 enthält diese Commits.

API-Änderungen

  • disallowEmoji in WearableRemoteInputExtender in setEmojisAllowed umbenannt, um festzulegen, ob die Option zum Zeichnen von Emojis angezeigt wird. (I28393)

Version 1.2.0-alpha01

15. September 2021

androidx.wear:wear-input:1.2.0-alpha01 und androidx.wear:wear-input-testing:1.2.0-alpha01 werden freigegeben. Version 1.2.0-alpha01 enthält diese Commits.

API-Änderungen

  • Alle Konstanten für die Schaltflächenposition von WearableButtons wurden freigegeben. (Ibb12c)
  • Die Klasse WearableRemoteInputExtender wurde hinzugefügt, mit der Sie der android.app.RemoteInput Wear-spezifische Extras hinzufügen können. (I01903)

Wear-Input 1.1.0

Version 1.1.0

18. August 2021

androidx.wear:wear-input:1.1.0 und androidx.wear:wear-input-testing:1.1.0 werden freigegeben. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

  • RemoteInputIntentHelper wurde hinzugefügt.
    • Mit dieser Klasse können Sie einen RemoteInput-Intent erstellen. Damit können Sie dann Input von Ihren Nutzern in einer anpassbaren Aktivität anfordern.

Version 1.1.0-rc01

4. August 2021

androidx.wear:wear-input:1.1.0-rc01 und androidx.wear:wear-input-testing:1.1.0-rc01 werden freigegeben. Version 1.1.0-rc01 enthält diese Commits.

Keine API-Änderungen seit dem androidx.wear:wear-input:1.1.0-beta01 und dem androidx.wear:wear-input-testing:1.1.0-beta01

Version 1.1.0-beta01

21. Juli 2021

androidx.wear:wear-input:1.1.0-beta01 und androidx.wear:wear-input-testing:1.1.0-beta01 wurden ohne Änderungen seit dem 1.1.0-alpha03 veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.

Version 1.1.0-alpha03

30. Juni 2021

androidx.wear:wear-input:1.1.0-alpha03 und androidx.wear:wear-input-testing:1.1.0-alpha03 werden freigegeben. Version 1.1.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • Ein Fehler wurde behoben, durch den RemoteInput-Intents, denen über RemoteInputHelper.putRemoteInputsExtra RemoteInputs hinzugefügt wurden, abgelehnt wurden.

Version 1.1.0-alpha02

18. Mai 2021

androidx.wear:wear-input:1.1.0-alpha02 und androidx.wear:wear-input-testing:1.1.0-alpha02 werden freigegeben. Version 1.1.0-alpha02 enthält diese Commits.

API-Änderungen

  • Bei den Methoden von RemoteInputIntentHelper, die zum Abrufen oder Setzen von Extras verwendet werden, die die Labels „Titel“, „Abbrechen“, „Bestätigen“ und „In Bearbeitung“ darstellen, wird jetzt CharSequence anstelle von String für diese Labels verwendet. (I0e71f)

Version 1.1.0-alpha01

27. Januar 2021

androidx.wear:wear-input:1.1.0-alpha01 und androidx.wear:wear-input-testing:1.1.0-alpha01 werden freigegeben. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Die Klasse „RemoteInputIntent“ aus der Wearable-Supportbibliothek zu AndroidX migrieren Die migrierte Klasse wird in RemoteInputIntentHelper umbenannt und bietet Hilfsfunktionen zur Unterstützung von Remote-Eingaben durch das Starten eines Intents. (I47cee)

Wear-Input 1.0.0

Version 1.0.0

2. Dezember 2020

androidx.wear:wear-input:1.0.0 und androidx.wear:wear-input-testing:1.0.0 werden freigegeben. Version 1.0.0 enthält diese Commits.

Dieser Release ist mit 1.0.0-rc01 identisch.

Wichtige Funktionen von 1.0.0

  • Migration der WearableButtons-Funktionen von der Wearable-Supportbibliothek zu Jetpack.

  • androidx.wear.input.test.TestWearableButtonsProvider wurde hinzugefügt, die androidx.wear.input.WearableButtonsProvider implementiert, um das Testen von Anwendungen zu unterstützen, die mit der androidx.wear:wear-input-Bibliothek entwickelt wurden.

Version 1.0.0-rc01

11. November 2020

androidx.wear:wear-input:1.0.0-rc01 und androidx.wear:wear-input-testing:1.0.0-rc01 werden freigegeben. Version 1.0.0-rc01 enthält diese Commits.

Dieser Release ist mit 1.0.0-beta01 identisch.

Version 1.0.0-beta01

28. Oktober 2020

androidx.wear:wear-input:1.0.0-beta01 und androidx.wear:wear-input-testing:1.0.0-beta01 werden seit 1.1.0-alpha01 unverändert veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Wear-Input-Testing Version 1.0.0-alpha01

14. Oktober 2020

androidx.wear:wear-input-testing:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

API-Änderungen

  • androidx.wear.input.test.TestWearableButtonsProvider wurde hinzugefügt, in dem androidx.wear.input.WearableButtonsProvider implementiert ist, um das Testen von Anwendungen zu unterstützen, die mit der androidx.wear:wear-input-Bibliothek entwickelt wurden. (I0ed0c)

Wear-Input-Version 1.0.0-alpha01

2. September 2020

androidx.wear:wear-input:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Migration der WearableButtons-Funktionen von der Wearable-Supportbibliothek zu Jetpack. Zusätzliche Unterstützung für Tests wird im nächsten Jetpack-Release in der androidx.wear:wear-input-testing-Bibliothek bereitgestellt.

Version 1.1.0

Version 1.1.0

14. Oktober 2020

androidx.wear:wear:1.1.0 wird veröffentlicht. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

  • Das Präfix layout_ für das Attribut „boxedEdges“ (jetzt layout_BoxedEdges) für BoxInsetLayout wurde hinzugefügt, um der Android-Namenskonvention zu entsprechen. Dadurch wird der Linterfehler in Android Studio für diese Attribute entfernt. (I4272f)
  • Optionales EXTRA_ANIMATION_DURATION_MILLIS zu ConfirmationActivity hinzugefügt, um die Dauer festzulegen, während der das Bestätigungsdialogfeld angezeigt wird. (adb83ce, b/143356547)
  • WearableActionDrawView wurde aktualisiert, um das Maximieren des Aktionsmenüs zu verzögern, bis es zum ersten Mal geöffnet wird. (I01026, b/163870541)

Version 1.1.0-rc03

2. September 2020

androidx.wear:wear:1.1.0-rc03 wird veröffentlicht. Version 1.1.0-rc03 enthält diese Commits.

Fehlerkorrekturen

  • Das Problem, dass im geöffneten Aktionsmenü keine Inhalte angezeigt wurden, wurde behoben. (I01026, b/163870541)

Version 1.1.0-rc02

24. Juni 2020

androidx.wear:wear:1.1.0-rc02 wird veröffentlicht. Version 1.1.0-rc02 enthält diese Commits.

Fehlerkorrekturen

  • Dem Attribut „boxedEdges“ (jetzt „layout_boxedEdges“) für BoxInsetLayout wurde das Präfix „layout_“ hinzugefügt, um der Android-Namenskonvention zu entsprechen. Dadurch wird der Linterfehler in Android Studio für diese Attribute entfernt.

Version 1.1.0-rc01

14. Mai 2020

androidx.wear:wear:1.1.0-rc01 wird seit .1.0-beta01 unverändert veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Version 1.1.0-beta01

29. April 2020

androidx.wear:wear:1.1.0-beta01 wird seit androidx.wear:wear:1.1.0-alpha01 unverändert veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.

Version 1.1.0-alpha01

15. April 2020

androidx.wear:wear:1.1.0-alpha01 wird veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Optionales EXTRA_ANIMATION_DURATION_MILLIS zu ConfirmationActivity hinzugefügt, um die Dauer festzulegen, während der das Bestätigungsdialogfeld angezeigt wird. (adb83ce, 134523c, b/143356547)

Fehlerkorrekturen

  • WearableActionDrawView wurde aktualisiert, um das Maximieren des Aktionsmenüs zu verzögern, bis es zum ersten Mal geöffnet wird. (5cd32f7)