Membuat aplikasi Wear OS untuk China

Saat membuat aplikasi Wear OS untuk China, Anda harus memperhitungkan handset yang tidak dilengkapi dengan layanan Google Play. Halaman ini berisi perubahan umum yang perlu diterapkan oleh developer internasional untuk pasar China.

Menggunakan versi layanan Google Play yang benar

Layanan Google Play versi 10.2.0 memberikan dukungan global untuk Fused Location Provider API dan Data Layer API. Developer harus menggunakan versi ini jika mereka menggunakan kedua API tersebut. Dalam kasus lainnya, dependensi ini bersifat opsional.

Meskipun layanan Google Play sekarang menyertakan API baru untuk aplikasi Wear, aplikasi Wear OS untuk China tetap harus menggunakan API yang terkait dengan GoogleApiClient; lihat Mengakses Wearable API.

Fused Location Provider API

Jika menggunakan Fused Location Provider API, Anda harus menyertakan dependensi berikut di file build.gradle modul wear Anda:

    dependencies {
        ...
        compile 'com.google.android.gms:play-services-location:10.2.0'
    }
    

Data Layer API

Penting: Penggunaan Data Layer API tidak lagi direkomendasikan sejak Wear 2.0. Hal ini karena sekarang aplikasi dapat mengakses internet secara langsung, sehingga menyederhanakan pengembangan kode. Selain itu, perangkat Wear yang tersambung ke iOS tidak mendukung Data Layer API.

Jika aplikasi Anda menggunakan Data Layer API, Anda perlu menambahkan baris berikut ke file build.gradle modul wear Anda. Baris ini mengharuskan penggunaan library klien versi 10.2.0:

    dependencies {
        ...

        compile 'com.google.android.gms:play-services-wearable:10.2.0'

        ...

    }
    

Selain itu, Anda perlu menambahkan baris berikut ke file build.gradle modul seluler Anda. Ganti dependensi layanan Google Play dengan referensi ke versi 10.2.0.

    dependencies {
        ...

        compile 'com.google.android.gms:play-services-wearable:10.2.0'

    }
    

Autentikasi

Sebelum menerapkan autentikasi, tinjau kasus penggunaan Anda untuk mengetahui apakah autentikasi benar-benar diperlukan. Misalnya, untuk aplikasi prakiraan cuaca, kemungkinan login tidak diperlukan dan begitu pula autentikasi.

Jika Anda memang memerlukan autentikasi, sebaiknya gunakan OAuth 2.0 atau, sebagai tindakan fallback, input pada perangkat. Cara lainnya, Anda dapat meneruskan token keamanan menggunakan Data Layer. Namun, penggunaan Data Layer tidak dianjurkan karena tidak mendukung perangkat Wear OS yang tersambung ke perangkat iOS.

Notifikasi tersambung

Notifikasi tersambung tidak didukung di China. Notifikasi ponsel akan disambungkan ke Wear OS hanya jika perangkat Wear terhubung ke ponsel melalui bluetooth.

Kompatibilitas koordinat pemetaan dan lokasi

Sebaiknya gunakan FusedLocationProvider untuk mendeteksi lokasi pengguna di China, seperti yang Anda lakukan di seluruh dunia. Hal ini memastikan bahwa aplikasi Anda memperhitungkan informasi terbaik terlepas dari hardware jam tangan dan platform ponsel yang tersambung ke jam tangan tersebut. Selain itu, ada manfaat berupa pengoptimalan baterai yang disertakan dalam platform Wear OS.

Saat mengintegrasikan FusedLocationProvider dengan SDK peta pihak ketiga, Anda harus memperhitungkan kompatibilitas koordinat antar-penyedia. FusedLocationProvider melaporkan lokasi berdasarkan standar WGS84. Pastikan untuk mengonversi sistem koordinat, jika perlu.

Dukungan Google Fit

Akumulasi jumlah langkah, menit bergerak, dan poin kardio Google Fit didukung di China, dengan histori maksimal selama tujuh hari. Anda dapat mengakses data ini tanpa memberikan kredensial pengguna.

Dukungan emulator

Anda dapat menggunakan image emulator Wear OS untuk China guna menguji aplikasi Anda. Emulator ini didukung di Android Studio mulai versi 3.0.

Untuk menguji aplikasi Anda pada emulator versi China:

  1. Pastikan Anda telah menginstal Android Emulator versi 26.1.2.
  2. Download image Wear OS untuk China dari pengelola SDK.
  3. Pilih untuk menggunakan image Wear OS untuk China saat membuat profil AVD.
  4. Jalankan emulator Wear OS untuk China untuk pengembangan.

Memulai saluran Bluetooth dan Wi-Fi khusus aplikasi

Wear OS otomatis merutekan permintaan jaringan. Secara umum, tidak ada keharusan bagi aplikasi untuk membuka saluran Bluetooth dan Wi-Fi khusus aplikasi.

Jika ada aplikasi yang meminta saluran Bluetooth dan Wi-Fi khusus aplikasi di China, permintaan tersebut akan digagalkan di latar belakang. Dialog pop-up akan ditampilkan untuk meminta konfirmasi pengguna. Jika pengguna mengonfirmasi, saluran akan dibuka. Hal ini terjadi setiap kali BluetoothAdapter.enable() atau WifiManager.setEnabled(true) dipanggil, bukan hanya pada penggunaan pertama.

Catatan: Agar aplikasi yang menargetkan Android 10 (API level 29) atau versi lebih tinggi memanggil WifiManager.setEnabled(), aplikasi harus berupa aplikasi sistem atau pengontrol kebijakan perangkat (DPC).

Mode Peninjauan Izin

Di China, perangkat Wear OS untuk China berjalan dalam Permission Review Mode, yang menerapkan beberapa batasan terkait penggunaan aplikasi dengan targetApiLevel di bawah 23:

  • Meskipun izin diberikan pada waktu penginstalan, saat aplikasi dengan targetApiLevel di bawah 23 dimulai untuk pertama kalinya, dialog akan muncul yang meminta pengguna untuk mengonfirmasi izin untuk aplikasi ini.
  • Semua komponen dalam aplikasi, seperti penerima siaran, layanan, aktivitas, dll., tidak akan merespons peristiwa yang terkait sebelum aplikasi digunakan untuk pertama kalinya.

Oleh karena itu, sebaiknya gunakan targetApiLevel 23 atau yang lebih tinggi, dan jalankan praktik terbaik izin runtime.

Menggunakan API layanan Google Play lain

Jika menggunakan API layanan Google Play selain Wearable API, aplikasi Anda perlu memeriksa apakah API tersebut tersedia untuk digunakan selama runtime dan memberikan respons yang sesuai. Ada dua cara untuk memeriksa ketersediaan API layanan Google Play:

  1. Gunakan instance GoogleApiClient terpisah untuk tersambung ke API lain. Antarmuka ini berisi callback untuk memberi tahu aplikasi Anda tentang keberhasilan atau kegagalan sambungan. Jika sambungan gagal, ConnectionResult akan menampilkan API_UNAVAILABLE. Untuk mempelajari cara menangani kegagalan sambungan, lihat Mengakses Google API.
  2. Gunakan metode addApiIfAvailable() dari GoogleApiClient.Builder untuk tersambung ke API yang diperlukan. Setelah callback onConnected() diaktifkan, gunakan metode hasConnectedApi() untuk memastikan bahwa setiap API yang diminta telah tersambung dengan benar.

Mendistribusikan aplikasi di China

Agar dapat menjangkau pengguna Wear OS untuk China secara efektif, Anda dapat mendistribusikan aplikasi melalui app store Wear OS pihak ketiga: