[go: up one dir, main page]


Diposting oleh Lidia Gaymond – Product Manager, Google Play

Selama bertahun-tahun, Google Play telah membantu pengguna menikmati versi terbaru aplikasi Anda melalui update otomatis atau update dalam aplikasi. Meskipun sebagian besar pengguna mengupdate aplikasi mereka dengan cara ini, beberapa pengguna mungkin masih tetap bertahan dengan versi aplikasi Anda yang sudah usang, tidak didukung, atau rusak.

Hari ini, kami memperkenalkan alat baru yang akan mengingatkan para pengguna ini untuk melakukan update, membawa mereka lebih dekat dengan pengalaman aplikasi yang Anda inginkan.

Alat pemulihan Play memungkinkan Anda mendorong pengguna yang menjalankan aplikasi versi tertentu untuk mengupdate setiap kali mereka memulai ulang aplikasi.

Gambar layar perangkat seluler berdampingan yang menunjukkan bagaimana permintaan untuk melakukan update terlihat oleh pengguna
Catatan: Gambar ini hanyalah contoh dan dapat berubah sewaktu-waktu

Untuk menggunakan fitur baru ini, masuk ke Konsol Google Play dan buka halaman Rilis atau Penjelajah App Bundle, di sini Anda bisa memilih versi aplikasi yang ingin Anda berikan prompt. Selain itu, fitur ini juga tersedia melalui Play Developer API, dan akan segera diperluas sehingga Anda dapat menargetkan beberapa versi aplikasi sekaligus. Perlu dicatat bahwa versi yang ingin Anda gunakan untuk men-deploy prompt harus dibuat sebagai app bundle.

Anda kemudian bisa mempersempit kriteria penargetan berdasarkan negara atau versi Android (jika diperlukan), tanpa perlu melakukan integrasi sebelumnya.

Saat ini, lebih dari 50% pengguna merespons prompt, sehingga lebih banyak pengguna yang mendapatkan pengalaman terbaik dari aplikasi Anda.

Setelah meminta pengguna untuk mengupdate, Anda bisa menggunakan alat pemulihan Konsol Play untuk mengedit konfigurasi update, melihat progresnya, atau membatalkan tindakan pemulihan. Pelajari lebih lanjut tentang fitur ini di sini dan mulai menggunakannya sekarang juga!



Diposting oleh Ben Trengrove, Android Developer Relations Engineer

Hari ini, sebagai bagian dari Bill of Materials Compose Januari ‘24, kami merilis Jetpack Compose versi 1.6, toolkit UI native modern Android yang digunakan oleh banyak aplikasi, seperti Threads, Reddit, dan Dropbox. Rilis ini sebagian besar berfokus pada peningkatan performa, karena kami terus melakukan migrasi pengubah dan meningkatkan efisiensi beberapa komponen utama API kami.

Untuk menggunakan rilis hari ini, upgrade versi Compose BOM Anda ke 2024.01.00

implementation platform('androidx.compose:compose-bom:2024.01.00')

Performa

Performa terus menjadi prioritas utama kami, dan rilis Compose ini memiliki peningkatan performa yang besar secara menyeluruh. Kami melihat peningkatan ekstra ~20% dalam performa scroll dan ~12% peningkatan waktu startup dalam tolok ukur kami, dan ini belum termasuk peningkatan dari rilis Agustus '23. Seperti halnya rilis tersebut, sebagian besar aplikasi akan mendapatkan manfaat ini hanya dengan melakukan upgrade ke versi terbaru, tanpa perlu melakukan perubahan kode.

Peningkatan performa scroll dan waktu startup berasal dari fokus kami yang berkelanjutan pada alokasi memori dan inisialisasi lazy, untuk memastikan framework hanya melakukan pekerjaan yang harus dilakukan. Peningkatan ini bisa dilihat pada semua API di Compose, terutama pada API teks, yang bisa diklik, Lazy list, dan grafik, termasuk vektor, dan sebagian berkat pekerjaan pemfaktoran ulang Modifier.Node yang sudah berlangsung selama beberapa rilis.

Ada juga panduan baru bagi Anda untuk membuat pengubah khusus Anda sendiri dengan Modifier.Node.

Mengonfigurasi stabilitas class eksternal

Compose compiler 1.5.5 memperkenalkan opsi compiler baru untuk menyediakan file konfigurasi bagi apa yang dianggap stabil oleh aplikasi Anda. Opsi ini memungkinkan Anda menandai class apa pun sebagai stabil, termasuk modul Anda sendiri, class library eksternal, dan class library standar, tanpa harus mengubah modul-modul ini atau membungkusnya dengan class wrapper stabil. Perhatikan bahwa kontrak stabilitas standar tetap berlaku; ini hanyalah metode mudah untuk memberi tahu Compose compiler tentang apa yang harus dianggap stabil oleh aplikasi Anda. Untuk informasi lebih lanjut tentang cara menggunakan konfigurasi stabilitas, lihat dokumentasi kami.

Performa kode yang dihasilkan

Kode yang dihasilkan oleh plugin Compose compiler juga telah ditingkatkan. Sedikit penyesuaian pada kode ini dapat menghasilkan peningkatan performa yang besar karena kode ini dibuat dalam setiap fungsi composable. Compose compiler melacak objek status Compose untuk mengetahui composable mana yang harus dikomposisi ulang ketika ada perubahan nilai; tetapi, banyak nilai status hanya dibaca satu kali, bahkan beberapa nilai status tidak pernah dibaca tetapi terus berubah! Update ini memungkinkan compiler untuk melewati pelacakan bila tidak diperlukan.

Compose compiler 1.5.6 juga mengaktifkan “intrinsic remember” secara default. Mode ini mengubah remember pada waktu kompilasi untuk memperhitungkan informasi yang sudah kita miliki tentang setiap parameter composable yang digunakan sebagai kunci untuk remember. Ini mempercepat kalkulasi untuk menentukan apakah ekspresi yang diingat perlu dievaluasi ulang, tetapi ini juga berarti jika Anda menempatkan titik henti sementara di dalam fungsi remember selama proses debug, fungsi ini mungkin tidak akan dipanggil lagi, karena compiler telah menghapus penggunaan remember dan menggantinya dengan kode yang berbeda.

Composable tidak akan dilewati

Kami juga berinvestasi agar kode yang Anda tulis menjadi lebih berkinerja, secara otomatis. Kami ingin mengoptimalkan kode yang Anda tulis secara intuitif, sehingga Anda tidak perlu mempelajari detail internal Compose untuk memahami mengapa composable Anda dikomposisi ulang padahal seharusnya tidak.

Rilis Compose ini menambahkan dukungan untuk mode eksperimental yang kami sebut “strong skipping mode”. Strong skipping mode melonggarkan beberapa aturan tentang perubahan apa saja yang dapat melewati rekomposisi, memindahkan keseimbangan ke arah yang diharapkan developer. Dengan mengaktifkan strong skipping mode, composable dengan parameter yang tidak stabil juga bisa melewati rekomposisi jika instance objek yang sama dimasukkan ke dalam parameternya. Selain itu, strong skipping mode secara otomatis mengingat lambda dalam komposisi yang menangkap nilai yang tidak stabil, selain perilaku default saat ini, yaitu mengingat lambda yang hanya mengambil tangkapan stabil. Strong skipping mode saat ini masih bersifat eksperimental dan dinonaktifkan secara default karena kami belum mempertimbangkannya untuk penggunaan produksi. Kami sedang mengevaluasi efeknya sebelum mengaktifkannya secara default di Compose 1.7. Lihat panduan kami untuk bereksperimen dengan strong skipping mode dan membantu kami menemukan setiap masalah.

Teks

Perubahan untuk padding font default

Rilis ini sekarang membuat setelan includeFontPadding bernilai false secara default. includeFontPadding adalah properti lama yang menambahkan padding ekstra berdasarkan metrik font di bagian atas baris pertama dan bagian bawah baris terakhir teks. Membuat setelan default ke false akan membuat tata letak teks default lebih sesuai dengan alat desain umum, sehingga semakin memudahkan kita mencocokkan spesifikasi desain yang dihasilkan. Setelah melakukan upgrade ke rilis Januari '24, Anda mungkin melihat perubahan kecil pada tata letak teks dan pengujian screenshot. Untuk informasi selengkapnya mengenai setelan ini, lihat postingan blog Memperbaiki Padding Font di Teks Compose dan dokumentasi developer.

Ketinggian garis dengan includeFontPadding bernilai false di sebelah kiri dan true di sebelah kanan.

Dukungan untuk penskalaan font nonlinear

Rilis Januari '24 menggunakan penskalaan font nonlinear untuk keterbacaan teks dan aksesibilitas yang lebih baik. Penskalaan font nonlinear mencegah elemen teks yang besar pada layar agar tidak terlalu besar dengan menerapkan kurva penskalaan nonlinear. Strategi penskalaan ini berarti bahwa teks yang besar tidak diskalakan dengan rasio yang sama seperti teks yang lebih kecil.

Seret dan lepas

Compose Foundation menambahkan dukungan untuk tarik lalu lepas tingkat platform, sehingga isi konten dapat ditarik ke aplikasi lain pada perangkat yang berjalan dalam mode multi-aplikasi. API ini 100% kompatibel dengan API View, yang berarti tarik lalu lepas yang dimulai dari View dapat ditarik ke Compose dan sebaliknya. Untuk menggunakan API ini, lihat contoh kode.

Gambar bergerak yang mengilustrasikan fitur tarik lalu lepas

Fitur tambahan

Fitur lain yang disertakan dalam rilis ini termasuk:

    • Dukungan untuk LookaheadScope dalam Lazy list.
    • Memperbaiki composable yang telah dinonaktifkan tetapi tetap dipertahankan untuk digunakan kembali dalam Lazy list yang tidak difilter secara default dari pohon semantik.
    • Keyframe berbasis spline dalam animasi.
    • Menambahkan dukungan untuk pemilihan dengan mouse, termasuk teks.

Mulai!

Kami berterima kasih atas semua laporan bug dan permintaan fitur yang dikirimkan ke issue tracker — semua itu membantu kami memperbaiki Compose dan membangun API yang Anda butuhkan. Terus berikan masukan Anda dan bantu kami menjadikan Compose lebih baik!

Ingin tahu rencana kami berikutnya? Lihat roadmap kami untuk melihat fitur-fitur yang sedang kami pikirkan dan kerjakan. Kami tidak sabar ingin segera melihat kreasi Anda yang berikutnya.

Selamat menggunakan Compose!