Wenn Sie Wear OS-Apps für China erstellen, müssen Sie Geräte berücksichtigen, auf denen die Google Play Dienste nicht vorinstalliert sind. Auf dieser Seite finden Sie häufige Änderungen, die Entwickler möglicherweise für den chinesischen Markt vornehmen müssen.
Die richtige Version der Google Play-Dienste verwenden
Die Google Play-Dienste-Version 10.2.0 bietet weltweiten Support für die Fused Location Provider API und die Data Layer API. Sie müssen diese Version der Google Play-Dienste verwenden, wenn Sie diese APIs nutzen, um eine größere Auswahl an Wear OS-Geräten in China zu unterstützen. In anderen Fällen ist diese Abhängigkeit optional.
Hinweis: Obwohl die Google Play-Dienste APIs für Wear OS-Apps enthalten, sollten Wear OS-Apps für China weiterhin APIs verwenden, die mit GoogleApiClient verknüpft sind. Weitere Informationen finden Sie unter
Auf die Wearable API zugreifen.
Fused Location Provider API
Wenn Sie die Fused Location Provider API verwenden, fügen Sie die folgende Abhängigkeit in
die build.gradle Datei Ihres Wear OS-Moduls ein:
Groovy
dependencies { ... implementation 'com.google.android.gms:play-services-location:10.2.0' }
Kotlin
dependencies { ... implementation("com.google.android.gms:play-services-location:10.2.0") }
Data Layer API
Wenn Ihre App die Data Layer API verwendet, müssen Sie die folgende Zeile in die
build.gradle Datei Ihres Wear OS-Moduls einfügen. Für die Zeile ist die Version 10.2.0 von
der Clientbibliothek erforderlich.
Groovy
dependencies { ... implementation 'com.google.android.gms:play-services-wearable:10.2.0' ... }
Kotlin
dependencies { ... implementation("com.google.android.gms:play-services-wearable:10.2.0") ... }
Fügen Sie die folgende Zeile in die build.gradle-Datei Ihres mobilen Moduls ein. Ersetzen Sie die Google Play-Dienste-Abhängigkeit durch einen Verweis auf die
Version 10.2.0.
Groovy
dependencies { ... implementation 'com.google.android.gms:play-services-wearable:10.2.0' }
Kotlin
dependencies { ... implementation("com.google.android.gms:play-services-wearable:10.2.0") }
Authentifizierung
Bevor Sie die Authentifizierung implementieren, prüfen Sie Ihre Anwendungsfälle, um festzustellen, ob sie tatsächlich erforderlich ist. Bei einer App, die beispielsweise die Wettervorhersage liefert, ist keine Anmeldung und somit keine Authentifizierung erforderlich.
Wenn Sie eine Authentifizierung benötigen, empfehlen wir die Verwendung der AndroidX OAuth 2.0-Bibliothek. Dazu ist die Verwendung des Autorisierungscode-Grant mit PKCE -Flow erforderlich. Sie können auch eine der anderen Methoden verwenden, die unter Authentifizierung auf Wearables beschrieben sind. Die Verwendung der Wearable Support Library wird nicht empfohlen.
Weitere Informationen finden Sie im Wear OS OAuth-Beispiel auf GitHub.
Überbrückte Benachrichtigungen
Überbrückte Benachrichtigungen werden in China nicht unterstützt. Smartphone-Benachrichtigungen werden nur dann an Wear OS überbrückt, wenn das Wear OS-Gerät über Bluetooth mit dem Smartphone verbunden ist.
Kompatibilität von Standort- und Kartenkoordinaten
Verwenden Sie
FusedLocationProvider (FLP), um den Standort des Nutzers in China zu ermitteln, wie Sie es auch
für den Rest der Welt tun würden. So wird sichergestellt, dass Ihre App die besten Informationen
berücksichtigt, unabhängig von der Smartwatch-Hardware und der Smartphone-Plattform, mit der die Smartwatch gekoppelt ist.
Durch die Verwendung von FLP wird auch die in die Wear OS-Plattform integrierte Akku-Optimierung hinzugefügt.
Berücksichtigen Sie bei der Integration von FusedLocationProvider mit Karten-SDKs von Drittanbietern,
die Kompatibilität der Koordinaten zwischen den Anbietern.
FusedLocationProvider meldet den Standort gemäß dem
WGS84 Standard.
Konvertieren Sie die Koordinatensysteme nach Bedarf.
Google Fit-Unterstützung
Der kumulierte Schrittzähler, die Bewegungsminuten und die Herzpunkte von Google Fit werden in China mit einem Verlauf von bis zu sieben Tagen unterstützt. Sie können darauf zugreifen, ohne Anmeldedaten anzugeben.
Unterstützung für Sprachaktionen
Die Wear OS-Plattform bietet mehrere Sprach-Intents, die auf Nutzeraktionen wie _„Herzfrequenz anzeigen“_ oder _„Wecker stellen“_ basieren. So können Nutzer sagen, was sie tun möchten, und das System ermittelt die beste Aktivität, die gestartet werden soll.
Wenn Nutzer eine Sprachaktion ausführen, kann Ihre App nach dem Intent filtern, das zum Starten einer Aktivität ausgelöst wird. Um einen Dienst im Hintergrund zu starten, zeigen Sie eine Aktivität als visuellen Hinweis an und starten Sie den Dienst in der Aktivität. Rufen Sie
finish() auf, um den visuellen Hinweis zu entfernen.
Hier ist eine Liste der Sprach-Intents, die von der Wear OS-Plattform unterstützt werden:
| Kategorie | Beispiel | Intent-Spezifikation |
| Taxiservice | 打车去三里屯 | Aktion
Extra
Das Extra ist optional. |
| Wecker stellen | 设置一个明早七点的闹钟 | Aktion
Extras
Diese Extras sind optional. Geben Sie entweder beide oder keines dieser Extras an. |
| Timer einstellen | 设置一个三分钟的倒计时 | Aktion
Extras
|
| Stoppuhr starten | 开始计时 | Aktion
|
| Fahrradtour starten oder beenden | 开始骑车 | Aktion
MIME-Typ
Extras
|
| Lauf starten oder beenden | 开始跑步 | Aktion
MIME-Typ
Extras
|
| Training starten oder beenden | 开始锻炼 | Aktion
MIME-Typ
Extras
|
| Herzfrequenz anzeigen | 查看心率 | Aktion
MIME-Typ
|
| Schrittzahl anzeigen | 查看步数 | Aktion
MIME-Typ
|
| Navigation | 导航去三里屯 | Aktion
Daten geo:latitude,longitude?q=融科资讯中心 |
Der Sprachassistent kann gegebenenfalls auch vorhandene allgemeine Android-Intents verwenden, um bestimmte Verhaltensweisen auszulösen.
Emulatorunterstützung
Sie können die chinesische Version des Wear OS-Emulator-Images verwenden, um Ihre Apps zu testen. Dies wird von Android Studio 3.0 und höher unterstützt.
So testen Sie Ihre Apps in der chinesischen Version des Emulators:
- Installieren Sie den Android-Emulator.
- Laden Sie die Wear OS for China-Images über den SDK-Manager herunter. Verwenden Sie die Version für Wear OS 3.5 (API-Level 30).
- Wählen Sie beim Erstellen eines AVD-Profils das Wear OS for China-Image aus.
- Führen Sie den Wear OS for China-Emulator für die Entwicklung aus.
Abbildung 1 : Beispiele für die chinesische Version des Wear OS-Emulators.
Diese Version des Wear OS-Emulators enthält mehrere vorinstallierte Apps:
- Umgebungsmodus
- Kontakte
- Google-Handschrifteingabe
- Google Play-Dienste
- Gesundheitsdienste für Wear OS
- Hotword-Erkennung für LE-Geräte
- Pinyin
- Google Play Store (angepasst für Geräte in China)
- Pocketwatch
- TalkBack
- Zifferblätter (sowohl analoge als auch digitale Versionen)
- Wear-Hauptdienste
App-spezifischen Bluetooth- und WLAN-Kanal initiieren
Wear OS leitet Netzwerkanfragen automatisch weiter. In den meisten Fällen ist es nicht erforderlich, dass die App einen app-spezifischen Bluetooth- und WLAN-Kanal öffnet.
Wenn eine App in China einen app-spezifischen Bluetooth- und WLAN-Kanal anfordert, schlägt die Anfrage
im Hintergrund fehl. Stattdessen wird ein Dialogfeld angezeigt, in dem der Nutzer um Bestätigung gebeten wird. Wenn der Nutzer bestätigt, wird der Kanal geöffnet. Dies geschieht jedes
Mal, nicht nur bei der ersten Verwendung. BluetoothAdapter.enable() oder
WifiManager.setEnabled(true) wird
aufgerufen.
Hinweis: Damit eine App, die auf
Android 10 (API-Level 29) oder höher ausgerichtet ist,
WifiManager.setEnabled() aufrufen kann, muss sie eine System-App oder ein
Geräte-Policy-Controller (Device Policy Controller, DPC) sein.
Berechtigungsprüfungsmodus
In China werden Wear OS for China-Geräte im Berechtigungsprüfungsmodus ausgeführt, der
einige Einschränkungen für die Verwendung von Apps mit einem targetApiLevel unter 23 mit sich bringt. Beachten Sie die folgenden Einschränkungen:
- Obwohl Berechtigungen bei der Installation gewährt werden, wird beim ersten Starten einer App mit einem
targetApiLevelunter 23 ein Dialogfeld angezeigt, in dem der Nutzer aufgefordert wird, die Berechtigungen für diese App zu bestätigen. - Komponenten in der App, z. B. Broadcast-Empfänger, Dienste und Aktivitäten reagieren erst auf entsprechende Ereignisse, wenn die App zum ersten Mal verwendet wird.
Daher empfehlen wir, targetApiLevel 23 oder höher
und die
Best Practices für App-Berechtigungen
zu übernehmen.
Andere Google Play-Dienste-APIs verwenden
Wenn Ihre App andere Google Play-Dienste-APIs als die Wearable API verwendet, muss sie zur Laufzeit prüfen, ob diese APIs verfügbar sind, und entsprechend reagieren. Es gibt zwei Möglichkeiten, die Verfügbarkeit von Google Play-Dienste-APIs zu prüfen:
- Verwenden Sie eine separate
GoogleApiClient-Instanz, um eine Verbindung zu anderen APIs herzustellen. Diese Schnittstelle enthält Callbacks, um Ihre App über den Erfolg oder Fehler der Verbindung zu informieren. Bei einer fehlgeschlagenen Verbindung zeigtConnectionResultAPI_UNAVAILABLEan. Informationen zum Beheben von Verbindungsfehlern finden Sie unter Auf Google APIs zugreifen. - Verwenden Sie die
addApiIfAvailable()Methode vonGoogleApiClient.Builder, um eine Verbindung zu den erforderlichen APIs herzustellen. Nachdem deronConnected()Callback ausgelöst wurde, prüfen Sie mit derhasConnectedApi()Methode, ob jede der angeforderten APIs korrekt verbunden ist.
Apps in China bereitstellen
Um Nutzer von Wear OS for China effektiv zu erreichen, können Sie Ihre App über Wear OS-App-Shops von Drittanbietern wie die folgenden bereitstellen:
- Galaxy Store für Samsung-Geräte
- Xiaomi Store für Xiaomi-Geräte
- Mobvoi für alle anderen Geräte