Wenn Sie Wear OS-Apps für China erstellen, müssen Sie Smartphones berücksichtigen, auf denen keine Google Play-Dienste vorinstalliert sind. Auf dieser Seite finden Sie häufige Änderungen, die Entwickler für den chinesischen Markt vornehmen müssen.
Die richtige Version der Google Play-Dienste verwenden
Die Version 10.2.0 der Google Play-Dienste bietet weltweite Unterstützung 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 verwenden, um eine breitere Palette von Wear OS-Geräten in China zu unterstützen. In anderen Fällen ist diese Abhängigkeit optional.
Hinweis:Google Play-Dienste enthalten zwar APIs für Wear OS-Apps, Wear OS-Apps für China sollten jedoch weiterhin APIs verwenden, die sich auf GoogleApiClient
beziehen. 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 der build.gradle
-Datei Ihres Wear OS-Moduls die folgende Abhängigkeit hinzu:
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 der build.gradle
-Datei Ihres Wear OS-Moduls die folgende Zeile hinzufügen. Für die Zeile ist die Version 10.2.0 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 der build.gradle
-Datei Ihres mobilen Moduls die folgende Zeile hinzu: Ersetzen Sie die Abhängigkeit von den Google Play-Diensten 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 die Authentifizierung tatsächlich erforderlich ist. Für eine App, die die Wettervorhersage liefert, ist beispielsweise keine Anmeldung und damit keine Authentifizierung erforderlich.
Wenn eine Authentifizierung erforderlich ist, empfehlen wir die Verwendung der AndroidX Oauth-Bibliothek. Dazu muss der Ablauf Autorisierungscode mit PKCE verwendet werden. 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
Brückenbenachrichtigungen werden in China nicht unterstützt. Smartphone-Benachrichtigungen werden nur dann an Wear OS weitergeleitet, 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 für den Rest der Welt tun würden. So werden in Ihrer App unabhängig von der Smartwatch-Hardware und der Smartphone-Plattform, mit der die Smartwatch gekoppelt ist, die besten Informationen berücksichtigt.
Wenn Sie die FLP verwenden, wird auch die in die Wear OS-Plattform integrierte Akkuoptimierung aktiviert.
Berücksichtigen Sie bei der Einbindung von FusedLocationProvider
in Karten-SDKs von Drittanbietern die Kompatibilität der Koordinaten zwischen den Anbietern.
FusedLocationProvider
gibt den Standort gemäß dem WGS84-Standard an.
Konvertieren Sie gegebenenfalls die Koordinatensysteme.
Google Fit-Support
In China werden der Anzahl der Schritte, die Aktivitätsminuten und die Kardiopunkte von Google Fit mit einem Verlauf von bis zu sieben Tagen unterstützt. Sie können darauf zugreifen, ohne Anmeldedaten anzugeben.
Unterstützung für Sprachbefehle
Die Wear OS-Plattform bietet mehrere Sprachabsichten, die auf Nutzeraktionen basieren, z. B. „Herzfrequenz anzeigen“ oder „Wecker stellen“. 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 aussprechen, kann Ihre App nach der Absicht filtern, die ausgelöst wird, um eine Aktivität zu starten. Wenn Sie einen Dienst im Hintergrund starten möchten, zeigen Sie eine Aktivität als visuellen Hinweis an und starten Sie den Dienst in der Aktivität. Rufen Sie
finish()
auf, um das visuelle Signal zu entfernen.
Hier finden Sie eine Liste der Sprachabsichten, die von der Wear OS-Plattform unterstützt werden:
Category | Beispiel | Intent-Spezifikation |
Fahrdienst | 打车去三里屯 | Aktion
Extra
Das Extra ist optional. |
Wecker stellen | 设置一个明早七点的闹钟 | Aktion
Extras
Diese Extras sind optional. Sie können entweder, beide oder keine dieser zusätzlichen Informationen angeben. |
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=融科资讯中心 |
Voice Assistant kann auch vorhandene allgemeine Android-Intents verwenden, um gegebenenfalls bestimmte Aktionen auszulösen.
Emulator-Unterstützung
Sie können die China-Version des Wear OS-Emulator-Images verwenden, um Ihre Apps zu testen. Diese Funktion wird von Android Studio 3.0 und höher unterstützt.
So testen Sie Ihre Apps mit der chinesischen Version des Emulators:
- Installieren Sie den Android-Emulator.
- Laden Sie die Wear OS-Images für China aus dem 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 für China-Image aus.
- Führen Sie den Wear OS für China-Emulator für die Entwicklung aus.
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
- Play Store (für Geräte in China angepasst)
- Taschenuhr
- 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 appspezifischen Bluetooth- und WLAN-Kanal öffnet.
Wenn eine App in China einen anwendungsspezifischen Bluetooth- und WLAN-Kanal anfordert, schlägt die Anfrage stillschweigend fehl. Stattdessen wird ein Dialogfeld angezeigt, in dem der Nutzer um Bestätigung gebeten wird. Wenn der Nutzer zustimmt, wird der Kanal geöffnet. Das passiert jedes Mal, nicht nur bei der ersten Verwendung. BluetoothAdapter.enable()
oder WifiManager.setEnabled(true)
wird aufgerufen.
Hinweis : Eine App, die auf Android 10 (API-Level 29) oder höher ausgerichtet ist und WifiManager.setEnabled()
aufrufen soll, muss eine System-App oder ein Device Policy Controller (DPC) sein.
Modus zur Überprüfung von Berechtigungen
In China werden Wear OS für China-Geräte im Modus zur Berechtigungsprüfung ausgeführt. Dies schränkt die Verwendung von Apps mit einer targetApiLevel
unter 23 ein. Beachten Sie die folgenden Limits:
- Auch wenn Berechtigungen bei der Installation erteilt werden, wird beim ersten Start einer App mit einer
targetApiLevel
unter 23 ein Dialogfeld angezeigt, in dem der Nutzer die Berechtigungen für diese App bestätigen muss. - Komponenten in der App wie Broadcastempfänger, Dienste und Aktivitäten reagieren nicht auf entsprechende Ereignisse, bevor die App zum ersten Mal verwendet wird.
Wir empfehlen daher, targetApiLevel
23 oder höher zu verwenden und die Best Practices für App-Berechtigungen zu beachten.
Andere APIs der Google Play-Dienste verwenden
Wenn Ihre App neben der Wearable API auch Google Play-Dienst-APIs verwendet, muss sie prüfen, ob diese APIs während der Laufzeit verfügbar sind, und entsprechend reagieren. Es gibt zwei Möglichkeiten, die Verfügbarkeit von Google Play-Dienst-APIs zu prüfen:
- Verwenden Sie eine separate
GoogleApiClient
-Instanz für die Verbindung zu anderen APIs. Diese Schnittstelle enthält Callbacks, um Ihre App über den Erfolg oder Fehler der Verbindung zu informieren. Bei einer fehlgeschlagenen Verbindung wird anstelle vonConnectionResult
API_UNAVAILABLE
angezeigt. Informationen zum Umgang mit Verbindungsfehlern finden Sie unter Zugriff auf Google APIs. - Verwenden Sie die Methode
addApiIfAvailable()
vonGoogleApiClient.Builder
, um eine Verbindung zu den erforderlichen APIs herzustellen. Nachdem der CallbackonConnected()
ausgelöst wurde, verwende die MethodehasConnectedApi()
, um sicherzustellen, dass alle angeforderten APIs richtig verbunden sind.
Apps in China bereitstellen
Wenn Sie Nutzer von Wear OS in China effektiv erreichen möchten, können Sie Ihre App über Wear OS-App-Shops von Drittanbietern wie die folgenden vertreiben:
- Galaxy Store für Samsung-Geräte
- Xiaomi Store für Xiaomi-Geräte
- Mobvoi für alle anderen Geräte