Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(Referenzdokumente für alle Wear-Pakete ansehen)
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 | - | - |
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.0.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.1.0") implementation("androidx.wear:wear-input-testing:1.1.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.0.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.0.1") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.0.0") }
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.
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
zuLifecycleObserver
.AmbientModeSupport
wird zugunsten der neuen sitzungsspezifischen Klassen eingestellt. ConfirmationOverlay
mit neuen Symbolen/Layout, Schriftarten und Schriftmetriken aktualisierenSwipeDismissTransitionHelper
wurde aktualisiert, um ein Hintergrund-Drawable anstelle eines zweitenView
zu verwenden, um Fehler bei der Verwendung desFragmentContainerView
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
aufArcLayout
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 inAmbientLifecycleObserver
umbenannt. Eine Instanz kann durch Aufrufen vonAmbientLifecycleObserver(...)
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
zuLifecycleObserver
.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 vonFragmentContainerView
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 wirArcLayout.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 jetztArcLayout.Widget
mitsetSweepAngleDegrees
, mit demArcLayout
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
aufArcLayout
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
vonOAuthRequest
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 zuErrorCode
(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
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 ohneexcludedTags
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
undBridgingConfig
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 BerechtigungPOST_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 inRemoteActivityHelper
umbenannt. Die FunktionenRemoteIntentHelper#getRemoteIntentExtraIntent
undRemoteIntentHelper#getRemoteIntentNodeId
wurden inRemoteActivityHelper#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 inWearTypeHelper.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 derOngoingActivity
zu erstellen. OngoingActivityData
undOngoingActivityStatus
sind nicht mehr Teil der öffentlichen API.
- Die neue Klasse
Die Klassen
TextStatusPart
undTimerStatusPart
sind nicht mehr Teil der öffentlichen API. (I57fb6)- Wenn Sie eine
Part
mit statischem Text erstellen möchten, verwenden SieStatus.TextPart
. - Wenn Sie eine
Part
mit einer Stoppuhr (aufwärts zählend) erstellen möchten, verwenden SieStatus.Stopwatch
. - Wenn du eine
Part
mit einem Timer erstellen möchtest, verwendeStatus.Timer
.
- Wenn Sie eine
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 dieandroidx.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 vonMap<UserStyleSetting, UserStyleSetting.Option>
undMutableUserStyleSetting#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 durchonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
ersetzt. Außerdem wurdeInteractiveWatchFaceClient.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 inListenableWatchFaceMetadataClient.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 anrenderWatchFaceToBitmap
oderPreviewScreenshotParams
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 einenListenableFuture
-Wrapper fürWatchFaceMetadataClient.createWatchFaceMetadataClient
bereitstellt. (I5fa37) UserStyleOption.getOptionForId
akzeptiert jetztUserStyleOption.Id
anstelle eines Byte-Arrays. (I469be)- Konstanten
BooleanOption.TRUE
undBooleanOption.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
increateOnWatchEditorSession
umbenannt.createHeadlessEditingSession
heißt jetztcreateHeadlessEditorSession
. Auch die Guava-Wrapper wurden umbenannt. (I1526b) EditorSession
ist jetzt eine Schnittstelle undListenableEditorSession.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, dieUserStyleSetting.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 Mediathekandroidx.wear:wear-watchface
verschoben. (I39e76) - Aus Gründen der Einheitlichkeit und Klarheit wurde
ComplicationProvider
inComplicationDataSource
umbenannt. Alle Klassen mit dem Namen „Anbieter“ wurden ebenfalls umbenannt. (Iaef0b) CanvasComplication.isHighlighted
wurde inRenderParameters.pressedComplicationSlotIds
verschoben. Dies ist ein Schritt auf dem Weg,CanvasComplication
zustandslos zu machen. Um diese Änderung zu unterstützen, wirdCanvasComplication.render
jetzt auchslotId
als Parameter übergeben undComplicationSlot
wird anGlesTextureComplication
übergeben. (I50e6e)- Wir haben
headlessDeviceConfig
zuEditorRequest
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 derUserStyleSchema
und feste Details zuComplicationSlots
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
wurdenmakeUiThreadContextCurrent
undmakeBackgroundThreadContextCurrent
durchrunUiThreadGlCommands
undrunBackgroundThreadGlCommands
ersetzt, die beide eineRunnable
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 wironRendererCreated
zuCanvasComplication
hinzugefügt, damitRenderer
undCanvasComplication
den Status leichter teilen können.Zur Verdeutlichung haben wir
Complication
inComplicationSlot
undcomplicationId
je nach Nutzung incomplicationSlotId
odercomplicationInstanceId
umbenannt.
API-Änderungen
- Zur besseren Verständlichkeit haben wir
Complication
inComplicationSlot
undcomplicationId
je nach Verwendung incomplicationSlotId
odercomplicationInstanceId
umbenannt. Klassen, die „Complication“ verwenden, wurden ebenfalls umbenannt. Beispielsweise heißt „ComplicationsManager“ jetzt „ComplicationSlotsManager“. (I4da44) - In GlesRenderer wurden
makeUiThreadContextCurrent
undmakeBackgroundThreadContextCurrent
durchrunUiThreadGlCommands
undrunBackgroundThreadGlCommands
ersetzt, die beide eineRunnable
akzeptieren. Diese Funktionen sind nur erforderlich, wenn Sie GL-Aufrufe außerhalb von „render“,runBackgroundThreadGlCommands
undonUiThreadGlSurfaceCreated
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 wironGlContextCreated
in GlesRenderer inonBackgroundThreadGlContextCreated
undonGlSurfaceCreated
inonUiThreadGlSurfaceCreated
umbenannt, um für mehr Klarheit zu sorgen. (If86d0) HeadlessWatchFaceClient
undInteractiveWatchFaceClient
getComplicationsSlotState
wurden ingetComplicationSlotsState
umbenannt. InComplicationSlot
:createRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
undcreateEdgeComplicationBuilder
wurden increateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
undcreateEdgeComplicationSlotBuilder
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-IDComplicationProviderInfo
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
undeglDisplay
dürfen jetzt nicht mehr null sein. Alle GL-Fehler werden jetzt überGlesRenderer.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 vonShortTextComplicationData.Builder
,LongTextComplicationData.Builder
undRangedValueComplicationData.Builder
an ihre Konstruktoren übergeben werden. WennComplicationText.EMPTY
fürcontentDescription
übergeben wird, wirdcontentDescription
automatisch aus dem Text und dem Titel generiert.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
gibt jetztServiceStartFailureException
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 vonsetMinimumUnit
insetMinimalTimeUnit
umbenannt. (I20c64) - Das Feld
contentDescription
vonShortTextComplicationData.Builder
,LongTextComplicationData.Builder
undRangedValueComplicationData.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
ausComplicationData
entfernt und stattdessen das FeldvalidTimeRange
freigegeben. Dieser Methodenaufruf kann durchvalidTimeRange.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
vonPhotoImageComplicationData.Builder
,MonochromaticImageComplicationData.Builder
undSmallImageComplicationData.Builder
muss jetzt im Konstruktor übergeben werden. (I9643a) ProviderInfoRetriever.requestPreviewComplicationData
wurde inretrievePreviewComplicationData
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 undCanvasComplicaitonDrawable
,GlesTextureComplication
undComplicationHighlightRenderer
zuwear-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
undComplication.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
undLongRangeUserStyleSetting
:defaultValue
,maximumValue
undminimumValue
sind jetzt Kotlin-Properties. Außerdem wurdenUserStyleSetting.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 ParameteroutlineExpansion
undoutlineStrokeWidth
. (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
undInteractiveWatchFaceSysUiClient
wurden jedoch zuInteractiveWatchFaceClient
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 überDefaultComplicationProviderPolicy
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 eineUserStyleData
-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
undUserStyleSetting.Option
verwenden jetztUserStyleSetting.Id
bzw.UserStyleSetting.Option.Id
, um ihre IDs anstelle eines Strings zu speichern. (I63f72)InteractiveWatchFaceClient.SystemState
wurde inWatchUiState
umbenannt. (I6a4e0)InteractiveWatchFaceWcsClient
undInteractiveWatchFaceSysUiClient
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 jetztLayer#COMPLICATIONS_OVERLAY
undLayer#BASE_LAYER
ist jetztLayer#BASE
(Ia144e) UserStyleListener
wurde inUserStyleChangeListener
umbenannt (I18524)UserStyleRepository
wurde inCurrentUserStyleRepository
(I6ea53) umbenannt.InteractiveWatchFaceWcsClient.updateInstance
wurde inupdateWatchfaceInstance
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 inCanvasComplication.loadData
umbenannt. (Wenn1239)ComplicationsManager.bringAttentionToComplication
wurde indisplayPressedAnimation
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()
undHeadlessWatchFaceClient.createFromBundle
hinzugefügt, um das Senden vonHeadlessWatchFaceClient
ü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 ingetOrCreateInteractiveWatchFaceClient
umbenannt. (Ib745d)EditorState.commitChanges
undhasCommitChanges()
wurden inshouldCommitChanges()
umbenannt. (I06e04)previewComplicationData
wurde inpreviewComplicationsData
umbenannt, um anzugeben, dass sich auf der Karte (in der Regel) mehr als eine Komplikation befindet. (I56c06)InteractiveWatchFaceWcsClient.bringAttentionToComplication
wurde indisplayPressedAnimation
umbenannt, um für Einheitlichkeit mitComplicationsManager.displayPressedAnimation
zu sorgen. (Ic9999)- Alle Instanzen der Zifferblatt-Instanz-ID wurden in einer neuen Klasse „WatchFaceId“ (I45fdf) gekapselt.
- Die Property
complicationState
wurde incomplicationsState
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 zuInteractiveWatchFaceSysUiClient
undWatchFaceControlClient
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 inopenComplicationProviderChooser
umbenannt. (I9d441)EditorSession.createOnWatchEditingSessionAsync
wurde increateOnWatchEditingSession
umbenannt und ist jetzt eine Funktion zum Pausieren. (Id257b)- Mehrere fehlende
@UiThread
-Anmerkungen zuEditorSession
hinzugefügt. (I6935c) UserStyleSetting.affectsLayers
wurde inaffectedLayers
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
durchCountUpTimeReference
undCountDownTimeReference
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 WertBundle.EMPTY
. (Iad04f)GlesRenderer
erfordert jetzt, dass Sie nach der BaustelleinitOpenGLContext
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 überComplicationsUserStyleSetting
tun. (Ibd9e5)ComplicationsManager.TapCallback.onComplicationSingleTapped
wurde inonComplicationTapped
umbenannt. (I3a55c)ComplicationOutlineRenderer.drawComplicationSelectOutline
wurde indrawComplicationOutline
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 BefehlupdateInstance
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 EigenschaftinitiallyEnabled
, mit der sich die Auswirkungen eines Stilwechsels vorhersagen lassen. (I8c905)- Wir haben
InteractiveWatchFaceWcsClient.setUserStyle
durch den leistungsfähigeren BefehlupdateInstance
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
inCATEGORY_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 korrektListenableFuture<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 inPHOTO_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 überComplication.createRoundRectComplicationBuilder
oderComplication.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 einMap<String, String>
statt einUserStyle
akzeptiert, da es schwierig ist, einUserStyle
zu erstellen, ohne das Schema zu kennen, das erst nach der Erstellung des Clients verfügbar ist. (Iea02a) - Korrigieren Sie
InteractiveWatchFaceWcsClient
, damitComplicationState
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 jetztComplicationState
, ist korrekt gewickelt und die Verwendung der Wearables-Unterstützung@ComplicationData.ComplicationType
wurde zu androidxComplicationType
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 vonDeviceConfig
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 vonRenderer
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
inStyleSetting
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" />
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>
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 APIWearTypeHelper
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 inWearTypeHelper.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 APIWearTypeHelper
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 wieTextView
) zum Festlegen der Schriftart und des Stils (Fettdruck/Kursivschrift) hinzugefügt. (I4653c) WearArcLayout
wurde inArcLayout
,WearCurvedText
inCurvedText
undWearArcLayout.ArcLayoutWidget
inArcLayout.Widget
umbenannt. (I6e5ce)- Am
ArcLayout.Widget
wurdegetThicknessPx
ingetThickness
umbenannt. - Konstanten für die vertikale Ausrichtung in
ArcLayout.LayoutParams
beginnen jetzt mitVERTICAL_ALIGN_
(anstelle des vorherigenVALIGN_
)
- Am
- Am
CurvedTextView
wurden die MethodensetMinSweepDegrees
undsetMaxSweepDegrees
durchsetSweepRangeDegrees
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 MethodeinsideClickArea
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)
- Beim Erstellen einer laufenden Aktivität kann jetzt eine Kategorie festgelegt werden, z.B.
- 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
aufWearArcLayout.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"
/>
- 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>
(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
inWearableRemoteInputExtender
insetEmojisAllowed
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
RemoteInput
s 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 jetztCharSequence
anstelle vonString
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, dieandroidx.wear.input.WearableButtonsProvider
implementiert, um das Testen von Anwendungen zu unterstützen, die mit derandroidx.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 demandroidx.wear.input.WearableButtonsProvider
implementiert ist, um das Testen von Anwendungen zu unterstützen, die mit derandroidx.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“ (jetztlayout_BoxedEdges
) fürBoxInsetLayout
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
zuConfirmationActivity
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ürBoxInsetLayout
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
zuConfirmationActivity
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)