Register now for Android Dev Summit 2019!

Menyediakan aktivitas konfigurasi pada Wear OS

Beberapa tampilan jam mendukung parameter konfigurasi sehingga pengguna bisa menyesuaikan tampilan jam dan perilakunya. Misalnya, beberapa tampilan jam memungkinkan pengguna memilih warna latar belakang khusus, dan tampilan jam yang menampilkan waktu untuk dua zona waktu berbeda memungkinkan pengguna memilih zona waktu mana yang ingin mereka gunakan.

Lihat pada sumber daya terkait berikut:

Tampilan jam yang mendukung parameter konfigurasi memungkinkan pengguna menyesuaikan tampilan jam menggunakan aktivitas di aplikasi wearable, aktivitas di aplikasi genggam, atau keduanya. Pengguna bisa memulai aktivitas konfigurasi wearable di perangkat wearable. Mereka juga bisa memulai aktivitas konfigurasi pendamping dari aplikasi genggam, jika sudah diinstal.

Catatan: Dalam Wear 1.x, saat pengguna menginstal aplikasi genggam yang berisi aplikasi wearable, aplikasi wearable secara otomatis diinstal di jam. Dalam Wear 2.0, aplikasi wearable tidak akan diinstal secara otomatis di jam. Selain itu, dalam Wear 2.0, aplikasi genggam tidak diperlukan. Jika ada dan Anda ingin menggunakannya, Anda harus menginstalnya secara terpisah.

Tampilan jam digital dari contoh WatchFace menunjukkan cara mengimplementasikan aktivitas konfigurasi genggam dan wearable serta cara mengupdate tampilan jam sebagai respons terhadap perubahan konfigurasi.

Menetapkan intent untuk aktivitas konfigurasi

Jika tampilan jam Anda menyertakan aktivitas konfigurasi, tambahkan entri metadata berikut ke deklarasi layanan dalam file manifes aplikasi wearable:

<service
    android:name=".DigitalWatchFaceService" ... />
    <!-- companion configuration activity -->
    <meta-data
        android:name=
           "com.google.android.wearable.watchface.companionConfigurationAction"
        android:value=
           "com.example.android.wearable.watchface.CONFIG_DIGITAL" />
    <!-- wearable configuration activity -->
    <meta-data
        android:name=
           "com.google.android.wearable.watchface.wearableConfigurationAction"
        android:value=
           "com.example.android.wearable.watchface.CONFIG_DIGITAL" />
    ...
</service>

Berikan nilai untuk entri-entri ini yang didahului oleh nama package aplikasi Anda. Aktivitas konfigurasi mendaftarkan filter intent untuk intent ini, dan sistem akan mengaktifkan intent ini ketika pengguna ingin mengonfigurasi tampilan jam Anda.

Jika tampilan jam Anda hanya berisi aktivitas konfigurasi pendamping atau wearable, Anda hanya perlu menyertakan entri metadata yang sesuai dari contoh di atas.

Membuat aktivitas konfigurasi wearable

Aktivitas konfigurasi wearable memberikan pilihan kustomisasi yang terbatas untuk tampilan jam, karena menu yang kompleks sulit dibuka di layar kecil. Aktivitas konfigurasi wearable sebaiknya memberikan pilihan biner dan hanya beberapa pilihan untuk menyesuaikan aspek utama tampilan jam Anda.

Untuk membuat aktivitas konfigurasi wearable, tambahkan aktivitas baru ke modul aplikasi wearable dan deklarasikan filter intent berikut dalam file manifes aplikasi wearable:

<activity
    android:name=".DigitalWatchFaceWearableConfigActivity"
    android:label="@string/digital_config_name">
    <intent-filter>
        <action android:name=
            "com.example.android.wearable.watchface.CONFIG_DIGITAL" />
        <category android:name=
        "com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

Nama aksi dalam filter intent ini harus sesuai dengan nama intent yang Anda tetapkan dalam Menetapkan Intent untuk Aktivitas Konfigurasi.

Dalam aktivitas konfigurasi, build UI sederhana yang menyediakan pilihan bagi pengguna untuk menyesuaikan tampilan jam Anda. Ketika pengguna membuat pilihan, gunakan Wearable Data Layer API untuk menyampaikan perubahan konfigurasi ke aktivitas tampilan jam.

Untuk detail selengkapnya, lihat class DigitalWatchFaceWearableConfigActivity dan DigitalWatchFaceUtil dalam contoh WatchFace.

Membuat aktivitas konfigurasi pendamping

Aktivitas konfigurasi pendamping memberi pengguna akses ke seperangkat lengkap pilihan konfigurasi untuk tampilan jam, hal ini karena lebih mudah berinteraksi dengan menu yang kompleks pada layar perangkat genggam yang lebih besar. Misalnya, aktivitas konfigurasi pada perangkat genggam memungkinkan Anda menyajikan kepada pengguna pemilih warna yang lengkap untuk memilih warna latar belakang tampilan jam.

Catatan: Aktivitas konfigurasi hanya bisa ditulis untuk perangkat genggam yang menjalankan Android.

Untuk membuat aktivitas konfigurasi pendamping, tambahkan aktivitas baru ke modul aplikasi genggam Anda dan deklarasikan filter intent berikut dalam file manifes aplikasi genggam:

<activity
    android:name=".DigitalWatchFaceCompanionConfigActivity"
    android:label="@string/app_name">
    <intent-filter>
        <action android:name=
            "com.example.android.wearable.watchface.CONFIG_DIGITAL" />
        <category android:name=
        "com.google.android.wearable.watchface.category.COMPANION_CONFIGURATION" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

Dalam aktivitas konfigurasi Anda, build UI yang menyediakan opsi untuk menyesuaikan semua elemen tampilan jam yang dapat dikonfigurasi. Ketika pengguna membuat pilihan, gunakan Wearable Data Layer API untuk menyampaikan perubahan konfigurasi ke aktivitas tampilan jam.

Untuk detail selengkapnya, lihat class DigitalWatchFaceCompanionConfigActivity dalam contoh WatchFace.

Membuat layanan listener dalam aplikasi wearable

Untuk menerima parameter konfigurasi terupdate dari aktivitas konfigurasi, buat layanan yang mengimplementasikan antarmuka WearableListenerService dari Wearable Data Layer API dalam aplikasi wearable. Implementasi tampilan jam Anda bisa menggambar kembali tampilan jam saat parameter konfigurasi berubah.

Untuk detail selengkapnya, lihat class DigitalWatchFaceConfigListenerService dan DigitalWatchFaceService dalam contoh WatchFace.