Wear OS meningkatkan daya tahan 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 gambar atau font bitmap dalam tampilan jam menggunakan Format Tampilan Jam, sistem melakukan hal berikut:
- Mengekstrak gambar atau font.
- Periksa apakah pengoptimalan berikut berlaku:
- Mengubah ukuran agar lebih pas dengan layar
- Memangkas piksel transparan
- Mengurangi sampling ke RGB565, tanpa kehilangan kualitas
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 menjumlahkan nilai-nilai berikut:
- Ukuran font vektor yang belum diproses
- Perkiraan 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 mencoba menghitung total ukuran resource tampilan jam di berbagai konfigurasi. Jika jumlah kombinasi sangat besar, sistem dapat memperkirakan secara berlebihan jumlah resource yang digunakan secara bersamaan.
Mode standby dan lapisan
Sistem mengasumsikan mode sekitar menggunakan hingga tiga lapisan layar penuh, dua di antaranya statis. Lapisan ini mencakup:
- Latar belakang tampilan jam. Sistem memperlakukan ini sebagai satu gambar, terlepas dari jumlah gambar yang membentuk latar belakang.
- Bagian yang bergerak seperti tangan, tampilan digital, atau elemen dinamis.
- Elemen yang tersisa dari file XML sumber.
Font bitmap besar sering kali menggunakan memori paling banyak 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 yang 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 masing-masing 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 pada tampilan jam, ubah warnanya, bukan menggulirkannya.
Teknik ini mengecilkan ukuran kotak pembatas yang dihitung untuk animasi.
Menghapus duplikat gambar
Untuk menampilkan gambar beberapa kali, sertakan hanya satu resource gambar dan rujuk 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="25" y="25"> <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="#654456" 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 overlay gambar mask
semi-transparan.
Tempatkan jarum jam dan detail di akhir file sumber
Node XML digambar dalam urutan yang tercantum dalam XML sumber. Dengan menempatkan jarum jam dan tampilan jam di bagian akhir, Anda memungkinkan sistem menghilangkan seluruh lapisan dari perhitungan memori mode sekitar.
Mengevaluasi penggunaan memori tampilan jam
Untuk mengukur penggunaan memori tampilan jam, gunakan alat evaluator jejak memori, yang tersedia di repositori watchface di GitHub.