Podczas tworzenia aplikacji na Wear OS na rynek chiński musisz uwzględnić telefony bez wstępnie zainstalowanych usług Google Play. Na tej stronie znajdziesz informacje o najczęstszych zmianach, które deweloperzy mogą wprowadzić na potrzeby rynku chińskiego.
Używanie prawidłowej wersji Usług Google Play
Usługi Google Play w wersji 10.2.0 obsługują na całym świecie interfejsy Fused Location Provider API i Data Layer API. Jeśli używasz tych interfejsów API, musisz używać tej wersji Usług Google Play, aby zapewnić obsługę szerszej gamy urządzeń z Wear OS w Chinach. W innych przypadkach ta zależność jest opcjonalna.
Uwaga: chociaż usługi Google Play zawierają interfejsy API dla aplikacji na Wear OS, aplikacje na Wear OS w Chinach powinny nadal używać interfejsów API związanych z GoogleApiClient
. Zapoznaj się z artykułem Uzyskiwanie dostępu do interfejsu Wearable API.
Fused Location Provider API
Jeśli używasz interfejsu Fused Location Provider API, dodaj tę zależność w pliku build.gradle
modułu Wear OS:
Odlotowe
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") }
Interfejs API warstwy danych
Jeśli Twoja aplikacja używa interfejsu Data Layer API, musisz dodać poniższy wiersz do pliku build.gradle
w module Wear OS. Ten wiersz wymaga użycia biblioteki klienta w wersji 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") ... }
Dodaj ten wiersz do pliku build.gradle
w module mobilnym. Zastąp zależność od Usług Google Play odwołaniem do wersji 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") }
Uwierzytelnianie
Przed wdrożeniem uwierzytelniania sprawdź, czy uwierzytelnianie jest faktycznie potrzebne. Na przykład w przypadku aplikacji wyświetlającej prognozę pogody nie jest wymagane logowanie, a tym samym uwierzytelnianie.
Jeśli wymagasz uwierzytelniania, zalecamy korzystanie z biblioteki OAuth na AndroidaX. Wymaga to użycia procesu przyznawania kodu autoryzacji z PKCE. Możesz też użyć jednej z innych metod opisanych w artykule Uwierzytelnianie na urządzeniach do noszenia. Nie zalecamy używania biblioteki obsługi urządzeń noszonych.
Więcej informacji znajdziesz na GitHubie w pliku przykładowego kodu OAuth na Wear OS.
Powiadomienia z innych aplikacji
Powiadomienia z mostem nie są obsługiwane w Chinach. Powiadomienia z telefonu są przesyłane do Wear OS tylko wtedy, gdy urządzenie z Wear OS jest połączone z telefonem przez Bluetooth.
Zgodność współrzędnych lokalizacji i mapowania
Użyj
FusedLocationProvider
(FLP), aby wykryć lokalizację użytkownika w Chinach, tak jak w pozostałych częściach świata. Dzięki temu aplikacja będzie uwzględniać najlepsze informacje niezależnie od sprzętu zegarka i platformy telefonu, z którą jest sparowany.
Korzystanie z FLP powoduje też włączenie optymalizacji baterii wbudowanej w platformę Wear OS.
Podczas integrowania FusedLocationProvider
z zewnętrzymi pakietami SDK map należy wziąć pod uwagę zgodność współrzędnych między dostawcami.
FusedLocationProvider
raportuje lokalizację zgodnie ze standardem WGS84.
Pamiętaj, aby odpowiednio przekształcić układy współrzędnych.
Pomoc Google Fit
W Chinach dostępne są licznik kroków, minuty ruchu i punkty kardio z Google Fit, z historią do 7 dni. Możesz uzyskać do nich dostęp bez podawania danych logowania użytkownika.
Obsługa komend głosowych
Platforma Wear OS udostępnia kilka intencji głosowych opartych na działaniach użytkownika, np. _„Pokaż tętno”_ lub _„Ustaw alarm”_. Dzięki temu użytkownicy mogą powiedzieć, co chcą zrobić, a system na początek wybierze najlepszą aktywność.
Gdy użytkownicy wypowiadają polecenie głosowe, aplikacja może odfiltrować intencję, która uruchamia daną aktywność. Aby uruchomić usługę w tle, wyświetl aktywność jako wizualny sygnał i uruchom usługę w ramach tej aktywności. Aby pozbyć się wizualnego sygnału, zadzwoń pod numer
finish()
.
Oto lista intencji głosowych obsługiwanych przez platformę Wear OS:
Kategoria | Przykład | Specyfikacja intencji |
Zamawianie przejazdu | 打车去型里屯 | Działanie
Dodatkowe
Dodatkowe informacje są opcjonalne. |
Ustaw alarm | 设置一个明早七点的闹钟 | Działanie
Dodatki
Te dodatki są opcjonalne. Podaj wszystkie, niektóre lub żadne z tych dodatków. |
Ustaw minutnik | 设置一个三分钟的倒计时 | Działanie
Dodatki
|
Uruchom stoper | 开始计时 | Działanie
|
Rozpoczynanie i zatrzymywanie jazdy rowerem | 开始骑车 | Działanie
Typ MIME
Dodatki
|
Rozpocznij lub zatrzymaj bieg | 开始跑步 | Działanie
Typ MIME
Dodatki
|
Rozpocznij lub zatrzymaj trening | 开始锻炼 | Działanie
Typ MIME
Dodatki
|
Wyświetlanie tętna | 查看型率 | Działanie
Typ MIME
|
Pokaż liczbę kroków | 查看步数 | Działanie
Typ MIME
|
Nawigacja | 导航去す里屯 | Działanie
Dane geo:latitude,longitude?q=融科资讯中心 |
Asystent głosowy może też używać istniejących intencji wspólnych Androida, aby wywoływać określone zachowania w odpowiednich sytuacjach.
Wsparcie dotyczące emulatora
Do testowania aplikacji możesz użyć obrazu obrazu Wear OS dla Chin. Ta funkcja jest obsługiwana w Android Studio 3.0 lub nowszej wersji.
Aby przetestować aplikacje na chińskiej wersji emulatora:
- Zainstaluj emulator Androida.
- Pobierz obrazy z Wear OS (Chiny) z menedżera pakietów SDK. Użyj wersji na Wear OS 3.5 (poziom interfejsu API 30).
- Podczas tworzenia profilu AVD wybierz obraz Wear OS na rynek chiński.
- Na potrzeby programowania możesz uruchomić emulator Wear OS dla Chin.
Ta wersja emulatora Wear OS ma kilka wstępnie zainstalowanych aplikacji:
- Dźwięki otoczenia
- kontakty,
- Pismo odręczne Google
- Usługi Google Play
- Usługi dotyczące zdrowia na Wear OS
- Rozpoznawanie słów-kluczy na urządzeniach LE
- Pinyin
- Sklep Play (dostosowany do urządzeń w Chinach)
- Zegarek
- TalkBack
- tarcze zegarka (zarówno analogowe, jak i cyfrowe);
- Usługi podstawowe Wear
Inicjowanie kanału Bluetooth i Wi-Fi dla konkretnej aplikacji
Wear OS automatycznie kieruje żądania sieciowe. W większości przypadków aplikacja nie musi otwierać kanału Bluetooth ani Wi-Fi konkretnej aplikacji.
Jeśli aplikacja poprosi o kanał Bluetooth i Wi-Fi związany z konkretną aplikacją w Chinach, żądanie nie powiedzie się. Zamiast tego pojawi się okno z prośbą o potwierdzenie. Jeśli użytkownik potwierdzi, kanał zostanie otwarty. Dzieje się tak za każdym razem, a nie tylko przy pierwszym użyciu. Wywołana jest funkcja BluetoothAdapter.enable()
lub WifiManager.setEnabled(true)
.
Uwaga: aby aplikacja kierowana na Androida 10 (poziom interfejsu API 29) lub nowszego mogła wywoływać funkcję WifiManager.setEnabled()
, musi być aplikacją systemową lub kontrolerem zasad urządzenia (DPC).
Tryb sprawdzania uprawnień
W Chinach urządzenia z Wear OS działają w trybie sprawdzania uprawnień, który nakłada pewne ograniczenia na korzystanie z aplikacji z targetApiLevel
niższym niż 23. Zapoznaj się z tymi limitami:
- Mimo że uprawnienia są przyznawane w momencie instalacji, gdy aplikacja z
targetApiLevel
niższym niż 23 poziomem po raz pierwszy się uruchamia, pojawia się okno z prośbą o potwierdzenie uprawnień dla tej aplikacji. - Komponenty aplikacji, takie jak odbiorniki, usługi i działania, nie reagują na odpowiednie zdarzenia przed pierwszym użyciem aplikacji.
Dlatego zalecamy korzystanie z targetApiLevel
w wersji 23 lub nowszej i przestrzeganie sprawdzonych metod dotyczących uprawnień aplikacji.
Korzystanie z innych interfejsów API usług Google Play
Jeśli aplikacja korzysta z interfejsów API Usług Google Play innych niż Wearable API, musi sprawdzić, czy te interfejsy API są dostępne do użycia w czasie działania, i odpowiednio na nie zareagować. Dostępność interfejsów API usług Google Play można sprawdzić na 2 sposoby:
- Do łączenia się z innymi interfejsami API użyj osobnej instancji
GoogleApiClient
. Ten interfejs zawiera wywołania zwrotne, które powiadamią aplikację o powodzeniu lub niepowodzeniu połączenia. W przypadku nieudanego połączeniaConnectionResult
wyświetlaAPI_UNAVAILABLE
. Aby dowiedzieć się, jak postępować w przypadku błędów połączeń, przeczytaj artykuł o uzyskiwaniu dostępu do interfejsów API Google. - Użyj metody
addApiIfAvailable()
interfejsuGoogleApiClient.Builder
, aby połączyć się z wymaganymi interfejsami API. Po uruchomieniu wywołania zwrotnegoonConnected()
użyj metodyhasConnectedApi()
, aby mieć pewność, że każdy z żądanych interfejsów API jest prawidłowo połączony.
Dystrybucja aplikacji w Chinach
Aby skutecznie docierać do użytkowników Wear OS w Chinach, możesz rozpowszechniać aplikacje w zewnętrznych sklepach z aplikacjami na Wear OS, takich jak:
- Galaxy Store na urządzeniach Samsung
- Xiaomi Store na urządzeniach Xiaomi
- Mobvoi na wszystkich innych urządzeniach