Jetpack Compose memberikan performa yang luar biasa secara langsung. Konfigurasikan aplikasi Anda menggunakan praktik terbaik untuk menghindari kesalahan umum dan mengoptimalkan performa aplikasi Compose Anda.
Keterampilan Android
Lihat di GitHubPerforma Jetpack Compose
android skills add jetpack-compose-performanceMelakukan tolok ukur Jetpack Compose
Untuk memvalidasi performa Jetpack Compose terhadap View, kami menggunakan benchmark utama—benchmark yang berfokus pada perjalanan pengguna yang penting dan nyata, seperti cold start aplikasi atau men-scroll daftar atau petak dengan gambar. Kami melakukan tolok ukur ini menggunakan aplikasi Pokedex open source, dengan membandingkan implementasi View dan Compose.
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 Hero.
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 mengupdate UI Anda.
- Profil Dasar Pengukuran: Profil ini mengompilasi kode penting terlebih dahulu, sehingga peluncuran aplikasi lebih cepat dan interaksi lebih lancar.
- Stabilitas: Pahami cara Compose membandingkan parameter selama rekomposisi sehingga Anda dapat melewati pekerjaan yang tidak perlu tanpa melakukan pemeriksaan kesetaraan yang mahal.
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 penyingkatan dengan compiler R8 untuk memastikan build rilis yang berperforma tinggi dan efisien.
- Gunakan Profil Dasar Pengukuran: Profil Dasar Pengukuran meningkatkan performa dengan melakukan kompilasi awal kode 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 rangkaian alat yang tersedia untuk membantu Anda mengukur dan menganalisis performa aplikasi Compose.
Praktik Terbaik
Saat mengembangkan aplikasi dengan Compose, perhatikan praktik terbaik berikut:
- Hindari penghitungan yang berat: Gunakan
rememberuntuk meng-cache hasil penghitungan yang berat. - Membantu tata letak lambat: Berikan parameter
keydancontentTypeyang stabil ke tata letak lambat untuk meminimalkan rekomposisi yang tidak perlu dan memungkinkan penggunaan kembali slot. - Batasi rekomposisi yang tidak perlu: Gunakan
computedStateOf(di Compose 1.13 dan yang lebih tinggi) atauderivedStateOfuntuk membatasi rekomposisi saat membaca status yang berubah dengan cepat. - Menunda pembacaan status: Tunda pembacaan status selama mungkin dengan menggabungkannya dalam fungsi lambda.
- Gunakan pengubah lambda untuk mengubah status: Gunakan pengubah berbasis lambda seperti
Modifier.offset { ... }untuk variabel status yang sering berubah. - Hindari 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 khusus Meningkatkan performa tata letak.
Referensi lainnya
- Panduan performa aplikasi: Temukan praktik terbaik, library, dan alat untuk meningkatkan performa di Android.
- Periksa Performa: Memeriksa performa aplikasi.
- Tolok ukur: Menjalankan tolok ukur performa aplikasi.
- Startup aplikasi: Optimalkan startup aplikasi.
- Profil dasar pengukuran: Memahami profil dasar pengukuran.