Wear OS-Apps für China erstellen

Beim Erstellen von Wear OS-Apps für China musst du auch Mobilgeräte ohne Google Play berücksichtigen -Dienste vorinstalliert. Diese Seite enthält häufige Änderungen, die Entwickler möglicherweise für auf dem chinesischen Markt.

Die richtige Version der Google Play-Dienste verwenden

Version 10.2.0 der Google Play-Dienste bietet weltweit Unterstützung für <ph type="x-smartling-placeholder"></ph> Fused Location Provider API und die <ph type="x-smartling-placeholder"></ph> Data Layer API. Sie müssen diese Version der Google Play-Dienste verwenden, wenn Sie diese APIs für Folgendes nutzen: die Unterstützung einer breiteren Palette von Wear OS-Geräten in China. In anderen Fällen ist diese Abhängigkeit optional.

Hinweis:Die Google Play-Dienste enthalten zwar APIs für Wear OS-Apps sollten Wear OS-Apps für China weiterhin APIs zu GoogleApiClient verwenden; Siehe <ph type="x-smartling-placeholder"></ph> 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 der Datei build.gradle Ihres Wear OS-Moduls:

Cool

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 Anwendung die Data Layer API verwendet, müssen Sie die folgende Zeile zur build.gradle-Datei deines Wear OS-Moduls. In der Zeile muss die Version 10.2.0 von der Clientbibliothek.

Cool

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 Datei build.gradle von Ihres mobilen Moduls. Ersetzen Sie die Abhängigkeit der Google Play-Dienste durch einen Verweis auf die Version 10.2.0.

Cool

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 erfolgt erforderlich. Bei einer App, die die Wettervorhersage liefert, werden wahrscheinlich keine und damit zur Authentifizierung.

Wenn eine Authentifizierung erforderlich ist, empfehlen wir die Verwendung des AndroidX-OAuth-Bibliothek Dazu müssen die Ablauf Autorisierungscode mit PKCE gewähren. Sie können auch eine der anderen Methoden verwenden, die in diesem Artikel beschrieben werden: Authentifizierung auf Wearables Die Verwendung der Wearable-Supportbibliothek wird nicht empfohlen.

Weitere Informationen finden Sie in der OAuth-Beispiel für Wear OS auf GitHub.

Überbrückte Benachrichtigungen

<ph type="x-smartling-placeholder"></ph> Überbrückte Benachrichtigungen werden in China nicht unterstützt. Smartphone-Benachrichtigungen sind überbrückt zu Wear OS nur, wenn das Wear OS-Gerät über Bluetooth mit dem Smartphone verbunden ist.

Kompatibilität von Standort und Kartenkoordinaten

Verwenden Sie die Methode FusedLocationProvider (FLP), um den Standort des Nutzers in China zu ermitteln, für den Rest der Welt. So sorgen Sie dafür, dass Ihre App die besten Informationen berücksichtigt. unabhängig von der Hardware der Smartwatch und der Smartphone-Plattform, mit der die Smartwatch gekoppelt ist. Bei Verwendung der Funktion „FLP“ wird auch die Akkuoptimierung hinzugefügt, die in die Wear OS-Plattform integriert ist.

Wenn du FusedLocationProvider in Karten-SDKs von Drittanbietern einbindest, die Kompatibilität der Koordinaten zwischen den Anbietern berücksichtigen. FusedLocationProvider meldet den Standort entsprechend dem WGS84-Standard. Achten Sie darauf, die Koordinatensysteme gegebenenfalls umzuwandeln.

Google Fit-Support

von Google Fit Schrittzähler, Bewegungsminuten und Kardiopunkte werden in China unterstützt, wobei bis zu 7 Tage Geschichte. Sie können darauf zugreifen, ohne Nutzeranmeldedaten anzugeben.

Unterstützung der Sprachbedienung

Die Wear OS-Plattform bietet mehrere Sprach-Intents, die auf Nutzeraktionen basieren, z. B. „Show“. Herzfrequenz"_ oder _"Wecker stellen"_. So können Nutzende sagen, was sie tun möchten, und das System die beste Aktivität zu ermitteln.

Wenn Nutzer einen Sprachbefehl sagen, kann Ihre App nach dem Intent filtern, der ausgelöst wird, um einen Aktivitäten. Wenn Sie einen Dienst im Hintergrund starten möchten, zeigen Sie eine Aktivität als visuellen Hinweis an und starten Sie den in der Aktivität. Rufen Sie unbedingt finish() auf, um den visuellen Hinweis zu entfernen.

Die folgenden Sprach-Intents werden von der Wear OS-Plattform unterstützt:

Category Beispiel Intent-Spezifikation
Autoanruf Aktion

com.google.android.gms.actions.RESERVE_TAXI_RESERVATION

Extra

to: das erkannte Ziel

Der Zusatz ist optional.

Wecker stellen Aktion

android.intent.action.SET_ALARM

Weitere Funktionen

android.provider.AlarmClock.EXTRA_HOUR: eine Ganzzahl mit der Stunde des Weckers

android.provider.AlarmClock.EXTRA_MINUTES: eine Ganzzahl mit der Minute des Weckers

Diese Extras sind optional. Geben Sie eines, beide oder keine dieser Extras an.

Timer gestellt Aktion

android.intent.action.SET_TIMER

Weitere Funktionen

android.provider.AlarmClock.EXTRA_LENGTH: eine Ganzzahl im Bereich von 1 bis 86.400 (Anzahl der Sekunden in 24 Stunden) für die Dauer des Timers

Stoppuhr starten 开始计时 Aktion

com.google.android.wearable.action.STOPWATCH

Fahrradtour starten oder beenden 开始骑车 Aktion

vnd.google.fitness.TRACK

MIME-Typ

vnd.google.fitness.activity/biking

Weitere Funktionen

actionStatus: ein String mit dem Wert ActiveActionStatus beim Start und CompletedActionStatus beim Anhalten

Lauf starten oder beenden 开始跑步 Aktion

vnd.google.fitness.TRACK

MIME-Typ

vnd.google.fitness.activity/running

Weitere Funktionen

actionStatus: ein String mit dem Wert ActiveActionStatus beim Start und CompletedActionStatus beim Anhalten

Training starten oder beenden 开始锻炼 Aktion

vnd.google.fitness.TRACK

MIME-Typ

vnd.google.fitness.activity/other

Weitere Funktionen

actionStatus: ein String mit dem Wert ActiveActionStatus beim Start und CompletedActionStatus beim Anhalten

Herzfrequenz anzeigen ??? Aktion

vnd.google.fitness.VIEW

MIME-Typ

vnd.google.fitness.data_type/com.google.heart_rate.bpm

Schrittzahl anzeigen 查看步数 Aktion

vnd.google.fitness.VIEW

MIME-Typ

vnd.google.fitness.data_type/com.google.step_count.cumulative

Navigation 导航去里屯 Aktion

android.intent.action.VIEW

Daten

geo:latitude,length?q=融科资讯丠

Der Sprachassistent kann auch Häufige Android-Intents bestimmte Verhaltensweisen auslösen.

Emulator-Unterstützung

Sie können zum Testen Ihrer Apps die chinesische Version des Wear OS-Emulator-Images verwenden. Dieses wird von Android Studio 3.0 und höher unterstützt.

So testen Sie Ihre Apps mit der chinesischen Version des Emulators:

  1. Android-Emulator installieren
  2. Lade die Wear OS for China-Images im SDK-Manager herunter. Version für Wear OS 3.5 verwenden (API-Level 30).
  3. Wähle beim Erstellen eines AVD-Profils das Wear OS for China-Image aus.
  4. Führen Sie zur Entwicklung den Emulator für Wear OS for China aus.
  5. 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
  • Play Store (angepasst für Geräte in China)
  • Taschenuhr
  • TalkBack
  • Zifferblätter (sowohl analoge als auch digitale Versionen)
  • Wear-Hauptdienste

App-spezifischen Bluetooth- und WLAN-Kanal starten

Wear OS leitet Netzwerkanfragen automatisch weiter. In den meisten Fällen besteht keine damit die App einen App-spezifischen Bluetooth- und WLAN-Kanal öffnet.

Wenn eine App einen app-spezifischen Bluetooth- und WLAN-Kanal in China anfordert, und schlägt stumm fehl. Stattdessen wird ein Dialogfeld der Nutzer um Bestätigung bittet. Wenn der Nutzer dies bestätigt, wird der Kanal geöffnet. Das passiert jeweils und nicht nur bei der ersten Verwendung. BluetoothAdapter.enable() oder WifiManager.setEnabled(true) ist aufgerufen.

Hinweis : Bei einer Ausrichtung auf eine App Android 10 (API-Level 29) oder höher WifiManager.setEnabled() muss es sich um eine System-App oder eine Device Policy Controller (DPC)

Berechtigungsprüfungsmodus

In China werden Wear OS-Geräte für China im Modus „Berechtigungsprüfung“ ausgeführt, Es gelten einige Einschränkungen für die Verwendung von Apps mit einer targetApiLevel unter 23. Überprüfen Sie die folgenden Limits:

  • Auch wenn Berechtigungen zum Zeitpunkt der Installation gewährt werden, gilt: Wenn eine App mit einer targetApiLevel weniger als 23 Starts erreicht hat, wird ein Dialogfeld angezeigt, in dem Sie gefragt werden, Nutzer, um die Berechtigungen zu bestätigen für diese App.
  • Komponenten der App, z. B. Übertragungsempfänger, Dienste und Aktivitäten nicht auf entsprechende Ereignisse reagieren, bevor die App zum ersten Mal verwendet wird.

Daher empfehlen wir Ihnen, targetApiLevel 23 oder höher zu verwenden und die App-Berechtigungen Best Practices.

Andere APIs für Google Play-Dienste verwenden

Wenn Ihre App verwendet Google Play Services APIs eine andere als die Wearable API verwenden, muss deine App prüfen, können diese APIs während der Laufzeit verwendet und entsprechend reagieren. Es gibt zwei Möglichkeiten, die Verfügbarkeit von Google Play-Dienst-APIs zu prüfen:

  1. Verwenden Sie eine separate GoogleApiClient-Instanz, um eine Verbindung zu anderen APIs herzustellen. Diese Schnittstelle enthält Rückrufe benachrichtigen Sie Ihre App über den Erfolg oder Fehler der Verbindung. Wenn die Verbindung fehlschlägt, zeigt ConnectionResult API_UNAVAILABLE an. Informationen zum Umgang mit Verbindungsfehlern finden Sie unter . Auf Google APIs zugreifen
  2. Verwenden Sie den addApiIfAvailable(). GoogleApiClient.Builder-Methode, um eine Verbindung zu den erforderlichen APIs herzustellen. Nach dem onConnected()-Callback ausgelöst wird, verwenden Sie die hasConnectedApi(), um sicherzustellen, dass alle angeforderten APIs korrekt verbunden sind.

Apps in China vertreiben

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: