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 korzystać z tej wersji Usług Google Play, aby zapewnić obsługę większej liczby 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
w module Wear OS:
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") }
Interfejs API warstwy danych
Jeśli Twoja aplikacja korzysta z interfejsu Data Layer API, musisz dodać ten wiersz do pliku build.gradle
w module na 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
Zanim wdrożysz uwierzytelnianie, sprawdź, czy jest ono rzeczywiście 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 użycie biblioteki AndroidX Oauth. 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.
Zespół pomocy 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, takich jak _„Pokaż tętno”_ czy _„Ustaw alarm”_. Dzięki temu użytkownicy mogą określić, co chcą zrobić, a system może wybrać najlepszą aktywność do rozpoczęcia.
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 zamiaru |
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 na rowerze | 开始骑车 | 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 obrazu obrazu emulatora Wear OS w wersji chińskiej. 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 Wear OS dla Chin z Menedżera pakietu 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.
- Uruchom emulator Wear OS dla Chin na potrzeby programowania.
Ta wersja emulatora Wear OS zawiera kilka wstępnie zainstalowanych aplikacji:
- Dźwięki otoczenia
- kontakty,
- Metoda wprowadzania tekstu odręcznego Google
- Usługi Google Play
- Usługi dotyczące zdrowia na Wear OS
- Wykrywanie 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.
Jeśli aplikacja poprosi o specyficzny dla niej kanał Bluetooth lub Wi-Fi w Chinach, żądanie zakończy się niepowodzeniem. Zamiast tego wyświetla 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łać 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 narzuca pewne ograniczenia dotyczące korzystania 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 po raz pierwszy się uruchamia, pojawia się okno z prośbą o potwierdzenie uprawnień dla tej aplikacji. - Składniki w aplikacji, takie jak odbiorniki transmisji, usługi i czynności, nie reagują na odpowiednie zdarzenia, dopóki aplikacja nie zostanie użyta po raz pierwszy.
Dlatego zalecamy używanie Androida targetApiLevel
w wersji 23 lub nowszej oraz stosowanie 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 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 udanej lub nieudanej nawiązaniu połączenia. W przypadku nieudanego połączeniaConnectionResult
wyświetlaAPI_UNAVAILABLE
. Aby dowiedzieć się, jak radzić sobie z błędami połączenia, przeczytaj artykuł Dostęp do interfejsów API Google. - Użyj metody
addApiIfAvailable()
interfejsuGoogleApiClient.Builder
, aby połączyć się z wymaganymi interfejsami API. Po wywołaniu funkcji zwrotnejonConnected()
użyj metodyhasConnectedApi()
, aby upewnić się, że każdy z wymaganych 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 sklepach zewnętrznych na Wear OS, takich jak:
- Galaxy Store na urządzeniach Samsung
- Xiaomi Store na urządzeniach Xiaomi
- Mobvoi na wszystkich innych urządzeniach