Panduan ini mencakup langkah-langkah pada alat yang Anda perlukan untuk mengonfigurasi tampilan jam menggunakan Format Tampilan Jam, beberapa saran tentang struktur project, dan panduan langkah demi langkah untuk menerapkan alat guna membuat struktur tersebut.
Prasyarat
Guna menyiapkan lingkungan pengembangan untuk menggunakan Format Tampilan Jam, selesaikan langkah-langkah penyiapan berikut:
Instal SDK untuk Android 14 (level API 34) atau yang lebih baru. Jika tampilan jam tidak bergantung pada fitur atau perilaku khusus versi 2, Anda dapat menginstal SDK untuk Android 13 (level API 33).
SDK ini berisi alat lain yang diperlukan, termasuk
aapt2
danandroid.jar
.Atau, instal Android Studio, yang juga dapat menyediakan alat ini.
Struktur project
Saat Anda membuat tampilan jam kustom yang menggunakan Format Tampilan Jam, Android App Bundle yang menyertakan file tampilan jam kustom harus sepenuhnya terpisah dari Android App Bundle yang berisi logika aplikasi Wear OS. Beberapa app store, termasuk Google Play, mencegah Anda mengupload Android App Bundle yang menyertakan logika Wear OS dan tampilan jam kustom.
Membuat paket tampilan jam
Untuk membuat Android App Bundle yang menampilkan file tampilan jam, selesaikan langkah-langkah yang ditampilkan di bagian berikut.
Mendeklarasikan penggunaan Format Tampilan Jam
Di file manifes aplikasi baru (AndroidManifest.xml
), tambahkan properti
aplikasi yang menunjukkan penggunaan Format Tampilan Jam oleh Anda. Kecuali jika Anda ingin
membatasi akses ke tampilan jam untuk perangkat yang menjalankan Wear OS 5 atau yang lebih baru,
buat 2 APK tampilan jam yang berbeda, satu yang mendukung versi 2 dan satu lagi
yang mendukung versi 1. Pelajari lebih lanjut cara mengonfigurasi versi aplikasi Anda.
<?xml version="1.0" encoding="utf-8" standalone="no"?> <manifest ...> <!-- Use SDK version 34 for version 2 of WFF, and SDK version 33 for version 1 of WFF --> <uses-sdk android:minSdkVersion="34" android:targetSdkVersion="34" /> <!-- WFF is a resource-only format, so the hasCode attribute should be set to false to reflect this. --> <application android:label="@string/watch_face_name" android:hasCode="false" ...> <property android:name="com.google.wear.watchface.format.version" android:value="2" /> </application> </manifest>
Mendeklarasikan metadata tampilan jam
Di direktori resource res/xml
aplikasi Anda, buat file baru bernama
watch_face_info.xml
. Di sinilah Anda menentukan metadata tampilan jam:
<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
<!-- Only "Preview" is required. -->
<Preview value="@drawable/watch_face_preview" />
<Category value="CATEGORY_EMPTY" />
<AvailableInRetail value="true" />
<MultipleInstancesAllowed value="true" />
<Editable value="true" />
</WatchFaceInfo>
Kolom dalam file ini mewakili detail berikut:
Preview
- Mereferensikan drawable yang berisi gambar pratinjau tampilan jam.
Category
Menentukan kategori tampilan jam. Harus berupa string atau referensi ke string, seperti
@string/ref_name
. Setiap produsen perangkat dapat menentukan kumpulan kategori tampilan jamnya sendiri.Nilai default:
empty_category_meta
, yang mengelompokkan tampilan jam ini dengan tampilan jam "kategori kosong" lainnya di bagian bawah tampilan pemilih tampilan jam.AvailableInRetail
Apakah tampilan jam tersedia di mode demo promo perangkat. Harus berupa nilai boolean, atau referensi ke nilai boolean seperti
@bool/watch_face_available_in_retail
.Nilai default:
false
MultipleInstancesAllowed
Apakah tampilan jam dapat memiliki beberapa favorit. Harus berupa nilai boolean, atau referensi ke nilai boolean, seperti
@bool/watch_face_multiple_instances_allowed
.Nilai default:
false
Editable
Apakah tampilan jam dapat diedit, artinya tampilan jam memiliki setelan atau setidaknya satu detail yang tidak tetap. Setelan ini digunakan untuk menampilkan atau menyembunyikan tombol Edit untuk tampilan jam dalam daftar favorit.
Nilai default: false
Mendeklarasikan nama tampilan jam
Di file manifes aplikasi (AndroidManifest.xml
), tetapkan atribut android:label
ke nama tampilan jam:
<application android:label="@string/watch_face_name" >
Mendeklarasikan dukungan untuk bentuk tampilan jam (opsional)
Langkah ini hanya diperlukan jika Anda ingin mendukung perilaku yang berbeda untuk berbagai ukuran tampilan jam. Anda dapat melewati langkah ini jika ingin tampilan jam diskalakan dengan ukuran smartwatch.
Dalam direktori resource res/xml
aplikasi Anda, deklarasikan kumpulan bentuk
tampilan jam yang Anda dukung di watch_face_shapes.xml
:
<WatchFaces>
<!-- The default shape is "CIRCLE". -->
<WatchFace shape="CIRCLE" width="300" height="300"
file="@raw/watchface"/>
<WatchFace shape="CIRCLE" width="450" height="450"
file="@raw/watchface_large_circle"/>
<WatchFace shape="RECTANGLE" width="380" height="400"
file="@raw/watchface_rectangle"/>
</WatchFaces>
Mendeklarasikan detail tampilan jam
Di direktori resource res/raw
aplikasi Anda, buat file yang sesuai dengan
nilai atribut file
yang digunakan saat Anda mendeklarasikan dukungan untuk bentuk
tampilan jam.
Di sinilah Anda akan menentukan tampilan dan perilaku tampilan jam
untuk setiap bentuk tampilan jam. Jika tidak menentukan file bentuk, Anda hanya perlu membuat satu file, watchface.xml
.
Dengan menggunakan contoh dari halaman ini, file XML mentahnya adalah:
res/raw/watchface.xml
res/raw/watchface_large_circle.xml
res/raw/watchface_rectangle.xml
Elemen root selalu WatchFace
:
<WatchFace width="450" height="450" clipShape="CIRCLE">
<!-- Remainder of your Watch Face Format definition here. -->
<!-- If this file defines a watch face for a circular device shape, place
resources used in this file in the "/res/drawable-nodpi" directory. -->
<!-- If this file defines a watch face for a rectangular or other
non-circular shape, place resources ued in this file in the
"/res/drawable-notround-nodpi" directory. -->
</WatchFace>
Mengidentifikasi penayang tampilan jam (opsional)
Secara opsional, di file manifes aplikasi, deklarasikan string arbitrer yang dapat digunakan untuk mengidentifikasi penayang tampilan jam, atau nama dan versi alat yang Anda gunakan:
<application ...> ... <property android:name="com.google.wear.watchface.format.publisher" android:value="{toolName}-{toolVersion}" /> </application>
Memeriksa kebenaran dan performa tampilan jam
Selama pengembangan, dan sebelum mengupload ke Google Play, gunakan alat validator untuk memeriksa apakah tampilan jam Anda bebas dari error, dan apakah tampilan jam mematuhi rekomendasi penggunaan memori.
- Pelajari lebih lanjut cara mengoptimalkan penggunaan memori dan memeriksa penggunaan memori sebagai persiapan untuk publikasi.
- Pelajari lebih lanjut cara menggunakan validator XML sebagai bagian dari siklus pengembangan.
Mem-build app bundle tampilan jam
Untuk mem-build Android App Bundle yang berisi tampilan jam, gunakan sistem build Gradle. Pelajari lebih lanjut cara mem-build aplikasi menggunakan Gradle.
Hal ini ditunjukkan dalam contoh GitHub.
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- AAPT2
- Dasar-dasar Jetpack Compose
- Memulai CameraX