Jetpack Compose memberikan performa yang sangat baik secara langsung. Konfigurasi aplikasi Anda menggunakan praktik terbaik untuk menghindari kesalahan umum dan mengoptimalkan performa aplikasi Compose Anda.
Tolok Ukur Jetpack Compose
Untuk memvalidasi performa Jetpack Compose terhadap Tampilan, kami menggunakan tolok ukur hero, yaitu tolok ukur yang berfokus pada perjalanan pengguna penting di dunia nyata, seperti memulai aplikasi dalam kondisi dingin atau men-scroll daftar atau petak dengan gambar. Kami melakukan tolok ukur ini menggunakan aplikasi Pokedex open source, dengan membandingkan implementasi Tampilan dan Compose-nya.
Tolok ukur ini menunjukkan bahwa Compose 1.9 dan yang lebih baru cocok dengan performa View untuk jank saat men-scroll.
Untuk metrik tambahan dan mempelajari metodologi kami, lihat Tolok ukur unggulan.
Konsep utama
Berikut adalah beberapa konsep utama untuk performa di Compose:
- Fase: Memahami fase komposisi, tata letak, dan gambar sangat penting untuk mengoptimalkan cara Compose memperbarui UI Anda.
- Profil Dasar Pengukuran: Profil ini mengompilasi kode penting terlebih dahulu, sehingga peluncuran aplikasi lebih cepat dan interaksi lebih lancar.
- Stabilitas: Tingkatkan stabilitas aplikasi Anda agar dapat melewati rekomposisi yang tidak perlu secara lebih efisien, sehingga meningkatkan performa.
Mengonfigurasi aplikasi Anda dengan benar
Jika aplikasi Anda berperforma buruk, mungkin ada masalah konfigurasi. Langkah pertama yang baik adalah memeriksa opsi konfigurasi berikut:
- Build dalam Mode Rilis dengan R8: Coba jalankan aplikasi Anda dalam mode rilis. Mode debug berguna untuk menemukan banyak masalah, tetapi dapat menimbulkan biaya performa dan dapat menyulitkan untuk mendeteksi masalah lain. Anda juga harus mengaktifkan pengoptimalan dan penyusutan dengan compiler R8 untuk memastikan build rilis yang berperforma tinggi dan efisien.
- Gunakan Profil Dasar Pengukuran: Profil Dasar Pengukuran meningkatkan performa dengan mengompilasi kode terlebih dahulu untuk perjalanan penting pengguna. Compose menyertakan profil default, tetapi idealnya, Anda juga harus membuat profil khusus aplikasi. Pelajari lebih lanjut Profil Dasar Pengukuran di dokumen performa Android umum
Alat
Pahami serangkaian alat yang tersedia untuk membantu Anda mengukur dan menganalisis performa aplikasi Compose.
Praktik Terbaik
Saat mengembangkan aplikasi dengan Compose, ingatlah praktik terbaik berikut:
- Hindari penghitungan yang mahal: Gunakan
rememberuntuk meng-cache hasil penghitungan yang mahal. - Membantu tata letak lambat: Berikan kunci yang stabil ke tata letak lambat menggunakan
parameter
keyuntuk meminimalkan rekomposisi yang tidak perlu. - Batasi rekomposisi yang tidak perlu: Gunakan
derivedStateOfuntuk membatasi rekomposisi saat status berubah dengan cepat. - Menunda pembacaan status: Tunda pembacaan status selama mungkin dengan membungkusnya dalam fungsi lambda.
- Gunakan pengubah lambda untuk mengubah status: Gunakan pengubah
berbasis lambda seperti
Modifier.offset { ... }untuk variabel status yang sering berubah. - Menghindari penulisan mundur: Jangan pernah menulis ke status yang telah dibaca dalam composable.
Untuk mengetahui detail selengkapnya, lihat panduan praktik terbaik.
Penayangan
Jika Anda menggunakan tampilan, bukan Compose, lihat panduan Meningkatkan performa tata letak khusus.
Referensi Tambahan
- Panduan performa aplikasi: Temukan praktik terbaik, library, dan alat untuk meningkatkan performa di Android.
- Periksa Performa: Periksa performa aplikasi.
- Tolok ukur: Mengukur performa aplikasi.
- Peluncuran aplikasi: Mengoptimalkan peluncuran aplikasi.
- Profil dasar pengukuran: Pahami profil dasar pengukuran.