Sebagai developer seluler, Anda sering mengembangkan UI aplikasi langkah demi langkah, bukan mengembangkan semuanya sekaligus. Android Studio menggunakan pendekatan ini dengan Jetpack Compose melalui penyediaan alat yang tidak memerlukan build penuh untuk memeriksa, mengubah nilai, dan memverifikasi hasil akhir.
Edit Live
Edit Live adalah fitur yang memungkinkan Anda mengupdate composable di emulator dan perangkat fisik secara real time. Fungsi ini meminimalkan pengalihan konteks antara penulisan dan pembuatan aplikasi sehingga Anda dapat berfokus pada penulisan kode lebih lama tanpa gangguan.
Edit Live memiliki tiga mode:
- Manual: Perubahan kode diterapkan saat di-push secara manual menggunakan Control+' (Command+' di macOS)
- Manual on Save: Perubahan kode diterapkan saat disimpan secara manual menggunakan Control+S (Command+S di macOS).
- Otomatis: Perubahan diterapkan di perangkat atau emulator saat Anda mengupdate fungsi composable.
Edit Live berfokus pada perubahan kode terkait UI dan UX. Edit Live tidak mendukung perubahan seperti pembaruan tanda tangan metode, penambahan metode baru, atau perubahan hierarki class. Untuk mengetahui informasi selengkapnya, lihat daftar Batasan Edit Live.
Fitur ini bukan pengganti untuk mem-build dan menjalankan aplikasi atau untuk Apply Changes. Sebaliknya, fitur ini dirancang untuk mengoptimalkan alur kerja Anda saat mem-build, men-deploy, dan melakukan iterasi untuk mengembangkan UI Compose.
Alur kerja praktik terbaik adalah sebagai berikut:
- Siapkan aplikasi agar dapat dijalankan.
- Lakukan Edit Live sebanyak mungkin sampai Anda perlu melakukan perubahan yang tidak didukung Edit Live, misalnya menambahkan metode baru saat aplikasi berjalan.
- Setelah melakukan perubahan yang tidak didukung, klik Run untuk memulai ulang aplikasi Anda dan melanjutkan Edit Live.
Mulai menggunakan Edit Live
Untuk memulai, ikuti langkah-langkah berikut untuk membuat Aktivitas Compose kosong, mengaktifkan Edit Live untuk project Anda, dan membuat perubahan dengan Edit Live.
Menyiapkan project baru
Sebelum memulai, pastikan Anda telah menginstal Android Studio Giraffe atau yang lebih tinggi dan API level dari perangkat fisik atau emulator minimal harus versi 30.
Buka Android Studio lalu pilih New Project pada dialog Welcome to Android Studio. Jika sudah membuka project, Anda dapat membuat project baru dengan membuka File > New > New Project.
Pilih template Empty Compose Activity untuk Phone and Tablet, lalu klik Next.
Isi dialog New Project dengan informasi yang diperlukan: nama, nama paket, lokasi penyimpanan, SDK minimum, dan bahasa konfigurasi build.
Klik Finish.
Mengaktifkan Edit Live
Buka setelan untuk mengaktifkan Edit Live.
- Pada Windows atau Linux, buka File > Settings > Editor > Live Edit.
- Pada macOS, buka Android Studio > Settings > Editor > Live Edit.
Pilih opsi Live Edit dan mode yang ingin dijalankan dari setelan.
Dalam mode manual, perubahan kode akan di-push setiap kali Anda menekan Control+' (Command+' di macOS). Dalam mode manual saat menyimpan, perubahan kode Anda akan diterapkan setiap kali Anda menyimpan secara manual, menggunakan Control+S (Command+S di macOS). Dalam mode otomatis, perubahan kode Anda akan diterapkan di perangkat atau emulator saat Anda melakukan perubahan.
Di editor, buka file
MainActivity
, yang merupakan titik entri aplikasi Anda.Klik Run untuk men-deploy aplikasi Anda.
Setelah Anda mengaktifkan Edit Live, tanda centang hijau Up-to-date akan muncul di kanan atas jendela alat Running Devices:
Membuat dan meninjau perubahan
Saat Anda membuat perubahan yang didukung di editor, perangkat pengujian virtual atau fisik akan diupdate secara otomatis.
Misalnya, edit metode Greeting
yang ada di MainActivity
menjadi
berikut:
@Composable fun Greeting(name: String) { Text( text = "Hello $name!", Modifier .padding(80.dp) // Outer padding; outside background .background(color = Color.Cyan) // Solid element background color .padding(16.dp) // Inner padding; inside background, around text) ) }
Perubahan Anda akan muncul secara instan di perangkat pengujian, seperti yang ditunjukkan pada gambar 4.
Memecahkan masalah Edit Live
Jika Anda tidak melihat hasil edit di perangkat pengujian, Android Studio mungkin gagal memperbarui hasil edit. Periksa apakah indikator Edit Live bertuliskan Out Of Date seperti yang ditunjukkan pada gambar 5, yang menunjukkan error kompilasi. Untuk mengetahui informasi tentang error dan saran cara mengatasinya, klik indikator.
Batasan Edit Live
Berikut adalah daftar batasan saat ini.
[Hanya berlaku untuk Android Studio Giraffe dan yang lebih tinggi] Edit Live memerlukan Compose Runtime 1.3.0 atau yang lebih tinggi. Jika project Anda menggunakan versi Compose yang lebih rendah, Edit Live akan dinonaktifkan.
[Hanya berlaku untuk Android Studio Giraffe dan yang lebih tinggi] Edit Live memerlukan AGP 8.1.0-alpha05 atau yang lebih tinggi. Jika project Anda menggunakan versi AGP yang lebih rendah, Edit Live akan dinonaktifkan.
Edit Live memerlukan perangkat fisik atau emulator yang menjalankan API level 30 atau yang lebih tinggi.
Edit Live hanya mendukung pengeditan isi fungsi, yang berarti Anda tidak dapat mengubah nama fungsi atau tanda tangan, menambahkan atau menghapus fungsi, atau mengubah kolom non-fungsi.
Edit Live mereset status aplikasi saat pertama kali Anda mengubah fungsi Compose dalam file. Hal ini hanya terjadi setelah perubahan kode pertama—status aplikasi tidak direset oleh perubahan kode berikutnya yang Anda buat pada fungsi Compose dalam file tersebut.
Class yang dimodifikasi dengan Edit Live mungkin menimbulkan beberapa masalah performa. Jalankan aplikasi dan gunakan build rilis bersih jika Anda mengevaluasi performanya.
Anda harus menjalankan run penuh agar debugger dapat beroperasi pada class yang telah Anda ubah dengan Edit Live.
Aplikasi yang berjalan mungkin error saat Anda mengeditnya dengan Edit Live. Jika ini terjadi, Anda dapat men-deploy ulang aplikasi dengan tombol Run .
Edit Live tidak melakukan manipulasi bytecode apa pun yang ditentukan dalam file build project, misalnya manipulasi bytecode yang akan diterapkan saat project dibuat menggunakan opsi dalam menu Build atau dengan mengklik tombol Build atau Run.
Fungsi Non-Composable diupdate secara langsung pada perangkat atau emulator, dan rekomposisi penuh dipicu. Rekomposisi penuh mungkin tidak memanggil fungsi yang diupdate. Untuk fungsi non-composable, Anda harus memicu fungsi yang baru diupdate atau menjalankan lagi aplikasi.
Edit Live tidak dilanjutkan saat aplikasi dimulai ulang. Anda harus menjalankan aplikasi lagi.
Edit Live hanya mendukung proses yang dapat di-debug.
Edit Live tidak mendukung project yang menggunakan nilai kustom untuk
moduleName
padakotlinOptions
dalam konfigurasi build.Edit Live tidak berfungsi dengan deployment multi-deploy. Artinya, Anda tidak dapat men-deploy ke satu perangkat, lalu ke perangkat lain. Edit Live hanya aktif di kumpulan perangkat terakhir tempat aplikasi di-deploy.
Edit Live berfungsi dengan deployment multiperangkat (deployment ke beberapa perangkat yang dibuat melalui Select multiple devices di menu dropdown perangkat target). Namun, fitur ini tidak didukung secara resmi dan mungkin ada masalah. Jika Anda mengalami masalah, laporkan.
Terapkan Perubahan/Terapkan Perubahan Kode tidak kompatibel dengan Edit Live dan mengharuskan aplikasi yang sedang berjalan dimulai ulang.
Edit Live saat ini tidak mendukung project Android Automotive.
Pertanyaan umum (FAQ) tentang Edit Live
Apa status Edit Live saat ini?
Edit Live tersedia di Android Studio Giraffe. Untuk mengaktifkannya, buka File > Settings > Editor > Live Edit (Android Studio > Settings > Editor > Live Edit di macOS).
Kapan saya harus menggunakan Edit Live?
Gunakan Edit Live jika Anda ingin segera melihat efek update pada elemen UX (seperti update pengubah dan animasi) di keseluruhan pengalaman aplikasi.
Kapan sebaiknya saya menghindari penggunaan Edit Live?
Edit Live berfokus pada perubahan kode terkait UI dan UX. Metode ini tidak mendukung perubahan seperti pembaruan tanda tangan metode, penambahan metode baru, atau perubahan hierarki class. Untuk mengetahui informasi selengkapnya, lihat Batasan Edit Live.
Kapan saya harus menggunakan Pratinjau Compose?
Gunakan Pratinjau Compose saat Anda mengembangkan composable individu. Pratinjau memvisualisasikan elemen Compose dan otomatis memuat ulang untuk menampilkan efek perubahan kode. Pratinjau juga mendukung tampilan elemen UI dalam berbagai konfigurasi dan status, seperti tema gelap, lokalitas, dan skala font.
Edit Live literal (tidak digunakan lagi)
Android Studio dapat diupdate secara real-time beberapa literal konstan yang digunakan di composable dalam pratinjau, emulator, dan perangkat fisik. Berikut beberapa jenis yang didukung:
Int
String
Color
Dp
Boolean
Anda dapat melihat literal konstan yang memicu update real-time tanpa langkah kompilasi dengan mengaktifkan dekorasi literal melalui indikator UI Live Edit literals:
Apply Changes
Menerapkan Perubahan memungkinkan Anda mengupdate kode dan resource tanpa harus men-deploy ulang aplikasi ke emulator atau perangkat fisik (dengan beberapa batasan).
Setiap kali menambahkan, mengubah, atau menghapus composable, Anda dapat mengupdate aplikasi tanpa harus men-deploy ulang dengan mengklik tombol Apply Code Changes:
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Menyesuaikan animasi {:#customize-animations}
- Animasi berbasis nilai
- Menambahkan parameter