Wear OS meningkatkan masa pakai baterai dengan melacak penggunaan memori. Tampilan jam yang menggunakan Format Tampilan Jam memiliki batas memori, sesuai dengan pedoman kualitas aplikasi Wear OS:
- Mode standby: Penggunaan memori maksimum 10 MB.
- Mode interaktif: Penggunaan memori maksimum 100 MB.
Penghitungan penggunaan memori
Untuk menghitung penggunaan memori untuk font gambar atau bitmap di tampilan jam menggunakan Format Tampilan Jam, sistem melakukan hal berikut:
- Dekompresi gambar atau font.
- Periksa apakah pengoptimalan berikut berlaku:
- Mengubah ukuran agar lebih sesuai dengan layar
- Memangkas piksel transparan
- Downsampling ke RGB565, tanpa kehilangan fidelitas
Berdasarkan kotak pembatas yang dihasilkan, ukuran dihitung sebagai berikut:
- Untuk gambar dan font yang menggunakan RGBA8888: 4 x lebar x tinggi
- Untuk gambar dan font yang menggunakan RGB565: 2 x lebar x tinggi
- Untuk gambar dan font yang menggunakan konfigurasi bitmap ALPHA_8: lebar x tinggi
Mode interaktif
Untuk menghitung penggunaan memori untuk mode interaktif, sistem akan menjumlahkan nilai berikut:
- Ukuran font vektor yang belum diproses
- Estimasi penggunaan font default sistem
- Ukuran total gambar dan font bitmap setelah pemangkasan, pengubahan ukuran, dan pemformatan ulang diterapkan
Konfigurasi
Untuk tampilan jam dengan konfigurasi, sistem akan mencoba menghitung ukuran total resource tampilan jam di berbagai konfigurasi. Jika jumlah kombinasi sangat besar, sistem mungkin melebih-lebihkan jumlah resource yang digunakan secara bersamaan.
Mode pencahayaan sinematik dan lapisan
Sistem mengasumsikan mode standby menggunakan hingga tiga lapisan layar penuh, dua di antaranya bersifat statis. Lapisan tersebut meliputi:
- Latar belakang tampilan jam. Sistem memperlakukannya sebagai satu gambar, terlepas dari jumlah gambar yang terdiri dari latar belakang.
- Bagian yang bergerak seperti jarum, layar digital, atau elemen dinamis.
- Elemen yang tersisa dari file XML sumber.
Font bitmap besar sering kali menggunakan memori terbanyak dalam mode standby.
Metode untuk mengurangi penggunaan memori
Gunakan pengoptimalan berikut untuk mengurangi penggunaan memori.
Memangkas dan mengubah ukuran font bitmap
Pangkas gambar dan objek BitmapFont
agar sesuai dengan ukuran tampilan.
Wear OS menampilkan tampilan jam dengan semua gambar didekompresi. Gambar layar penuh yang sebagian besar kosong mungkin menggunakan ukuran disk sebesar 3 KB, tetapi 750 KB atau lebih pada layar 450 x 450 piksel.
Menggunakan tinggi font bitmap yang konsisten
Saat menggunakan BitmapFont
, pastikan semua gambar untuk karakter memiliki tinggi
yang sama. Demikian juga, pastikan semua gambar untuk setiap kata memiliki tinggi yang sama.
Menggunakan ukuran frame yang konsisten dalam animasi
Daripada memindahkan gambar di seluruh tampilan jam, perbarui elemen dalam gambar dan pertahankan posisi kotak pembatas tetap. Misalnya, untuk menganimasikan lingkaran di tampilan jam, ubah warnanya, bukan menggulungnya.
Teknik ini memperkecil ukuran kotak pembatas yang dihitung animasi.
Menghapus duplikat gambar
Untuk menampilkan gambar beberapa kali, hanya sertakan satu resource gambar dan referensikan beberapa kali.
Menampilkan progres menggunakan busur
Untuk menyimulasikan status progres yang selesai setelah 1 menit atau 1 jam, jangan gunakan 60
gambar. Gunakan objek Arc
dengan ekspresi yang mengontrol durasinya, seperti
yang ditunjukkan di sini:
<PartDraw angle="0" width="400" height="400" name="ProgressBar" pivotX="0.5" pivotY="0.5 x="40" y="40"> <Arc centerX="200" centerY="200" width="400" height="400" startAngle="0" endAngle="360"> <!-- Completes a "progress loop" every minute. --> <Transform target="endAngle" value="0 + (clamp([SECOND], 0, 60) - 0) * 6" /> <Stroke cap="ROUND" color="#123456" thickness="10" /> </Arc> </PartDraw>
Untuk menampilkan garis tidak berkelanjutan, misalnya untuk mendapatkan tampilan gaya jam tangan digital
retro, gunakan properti tanda hubung untuk objek Stroke
atau gambar overlay mask
semi-transparan.
Menempatkan jarum jam dan detail di akhir file sumber
Node XML digambar dalam urutan yang tercantum dalam XML sumber. Dengan menempatkan jarum dan detail jam di bagian akhir, Anda memungkinkan sistem untuk menghapus seluruh lapisan dari penghitungan memori mode standby.
Mengevaluasi penggunaan memori tampilan jam
Untuk mengukur penggunaan memori tampilan jam, gunakan alat evaluator
jejak memori, yang tersedia di repositori watchface
di GitHub.