Penulis: Dave Burke, VP of Engineering
Setiap hari, aplikasi Android membantu miliaran orang bekerja, bermain, berkomunikasi, dan berkreasi di berbagai perangkat mulai dari ponsel, laptop, tablet, TV, dan mobil. Ketika semakin banyak orang mengandalkan pengalaman yang Anda bangun, ekspektasi mereka juga meningkat dengan cepat. Inilah salah satu alasan kami membagikan rilis Android dengan Anda lebih awal: masukan Anda akan membantu kami membangun platform yang lebih baik untuk aplikasi Anda dan semua orang yang menggunakannya. Hari ini, kami merilis Developer Preview pertama Android 12, versi Android berikutnya, untuk pengujian dan masukan Anda.
Pada setiap versi, kami berupaya membuat OS lebih pintar, lebih mudah digunakan, dan berkinerja lebih baik, dengan selalu mengutamakan privasi dan keamanan. Di Android 12, kami juga berupaya memberikan fitur baru untuk menciptakan pengalaman luar biasa bagi pengguna. Mulai dengan hal-hal seperti transcoding media kompatibel, yang membantu aplikasi Anda menangani format video terbaru jika Anda belum mendukungnya, dan lebih mudah menyalin/menempelkan beragam konten ke dalam aplikasi, seperti gambar dan video. Kami juga menambahkan perlindungan privasi dan mengoptimalkan kinerja agar aplikasi Anda tetap responsif.
Pratinjau pertama hari ini hanyalah permulaan untuk Android 12, dan kami memiliki banyak hal yang akan dibagikan seiring dengan perilisannya. Baca terus untuk mengetahui hal-hal terbaru di Android 12, dan kunjungi situs developer Android 12 untuk detail tentang download Pixel dan kronologi rilis. Seperti biasa, sangatlah penting untuk mendapatkan masukan awal dari Anda, guna membantu kami menerapkannya ke dalam produk final, jadi beri tahu kami pendapat Anda!
Selain pekerjaan yang kami lakukan di Android 12, akhir bulan ini kami memiliki banyak hal yang akan dibagikan tentang fitur penting lainnya untuk membantu Anda menciptakan pengalaman pengguna yang luar biasa dengan lebih mudah: Jetpack Compose, toolkit modern kami untuk membangun UI native. Bergabunglah bersama kami di #TheAndroidShow untuk melihat latar belakang Jetpack Compose, dalam streaming langsung tanggal 24 Februari pukul 09 pagi Waktu Pasifik, dan tweet pertanyaan Jetpack Compose Anda menggunakan #TheAndroidShow agar dijawab langsung di acara tersebut.
Privasi adalah inti dari semua yang kami lakukan, dan di Android 12 kami tetap fokus memberikan lebih banyak transparansi dan kontrol kepada pengguna sembari menjaga perangkat dan data mereka tetap aman. Dalam rilis hari ini kami telah menambahkan kontrol baru atas identifier yang bisa digunakan untuk pelacakan, default yang lebih aman untuk komponen aplikasi, dan banyak lagi. Perubahan ini bisa memengaruhi aplikasi Anda, jadi kami menyarankan pengujian sesegera mungkin. Nantikan lebih banyak fitur privasi dan keamanan yang akan hadir dalam rilis pratinjau mendatang.
Perilaku cookie SameSite modern di WebView - Sejalan dengan perubahan pada Chrome dan browser lain, WebView menyertakan perilaku cookie SameSite baru untuk memberikan keamanan dan privasi tambahan serta memberikan transparansi dan kontrol yang lebih banyak kepada pengguna atas cara penggunaan cookie di seluruh situs. Selengkapnya di sini.
Netlink MAC Terbatas - Kami terus membantu developer bermigrasi ke identifier yang dapat direset untuk melindungi privasi. Dalam upaya multirilis untuk memudahkan migrasi Netlink MAC dengan lingkup-perangkat, di Android 11 kami membatasi aksesnya berdasarkan API level 30, dan di Android 12 kami menerapkan pembatasan untuk semua aplikasi - terlepas dari level targetSDK. Selengkapnya di sini.
Ekspor komponen yang lebih aman - Untuk mencegah aplikasi mengekspor aktivitas, layanan, dan penerima secara tidak sengaja, kami mengubah penanganan default atribut android;exported agar lebih eksplisit. Dengan perubahan ini, sekarang komponen yang mendeklarasikan satu atau beberapa filter intent harus secara eksplisit mendeklarasikan atribut android:exported. Anda harus memeriksa komponen dalam manifes untuk menghindari kesalahan penginstalan yang terkait dengan perubahan ini. Selengkapnya di sini.
Penanganan Intent yang lebih aman - Agar penanganan PendingIntents lebih aman, Android 12 mengharuskan aplikasi mendeklarasikan flag mutabilitas secara eksplisit, baik FLAG_MUTABLE maupun FLAG_IMMUTABLE baru, untuk setiap PendingIntent. Selengkapnya di sini.
Anda bisa membaca selengkapnya tentang hal ini serta perubahan privasi dan keamanan lainnya di sini.
Di Android 12, kami berinvestasi di bidang-bidang penting untuk memberikan pengalaman terbaik dan kinerja yang lebih baik bagi pengguna. Berikut adalah beberapa pembaruan sejauh ini.
Transcoding media kompatibel - Dengan prevalensi encoder perangkat keras HEVC pada perangkat seluler, aplikasi kamera semakin banyak merekam dalam format HEVC, yang menawarkan peningkatan kualitas dan kompresi yang signifikan dibandingkan codec lama. Sebagian besar aplikasi akan mendukung HEVC, tetapi untuk aplikasi yang tidak bisa, kami menghadirkan transcoding media kompatibel.
Dengan fitur ini, aplikasi yang tidak mendukung HEVC bisa membuat agar platform secara otomatis melakukan transcoding file ke dalam AVC, yaitu format yang lebih kompatibel. Proses transcoding membutuhkan waktu, tergantung video dan properti perangkat kerasnya. Misalnya, transcoding video 1080p satu menit 30 fps membutuhkan waktu sekitar 9 detik pada Pixel 4. Anda bisa memilih penggunaan layanan transcoding dengan mendeklarasikan format media yang tidak didukung aplikasi Anda. Untuk developer, kami sangat menyarankan agar aplikasi Anda mendukung HEVC, dan jika tidak memungkinkan, aktifkan transcoding media kompatibel. Fitur ini akan aktif di semua perangkat yang menggunakan format HEVC untuk perekaman video. Kami sangat menantikan masukan Anda tentang fitur ini. Selengkapnya di sini.
Dukungan gambar AVIF - Untuk memberi Anda kualitas gambar yang lebih tinggi dengan kompresi yang lebih efisien, Android 12 memperkenalkan dukungan platform untuk AV1 Image File Format (AVIF). AVIF adalah format container untuk gambar dan rangkaian gambar yang dikodekan menggunakan AV1. Seperti format gambar modern lainnya, AVIF memanfaatkan konten yang dikodekan dalam bingkai dari kompresi video. Format ini secara dramatis meningkatkan kualitas gambar untuk ukuran file yang sama jika dibandingkan dengan format gambar lama, seperti JPEG.
AVIF (18,2 kB)
JPEG (20,7 kB)
Ucapan terima kasih: Perbandingan gambar dari AVIF has landed oleh Jake Archibald
Optimalisasi layanan latar depan - Layanan latar depan adalah cara penting bagi aplikasi dalam mengelola jenis tugas tertentu yang dihadapi pengguna, tetapi bila digunakan secara berlebihan bisa memengaruhi kinerja, bahkan menyebabkan aplikasi ditutup. Untuk memastikan pengalaman yang lebih baik bagi pengguna, kami akan memblokir dimulainya layanan latar depan dari latar belakang untuk aplikasi yang menargetkan platform baru. Untuk mempermudah transisi dari pola ini, kami memperkenalkan expedited job baru di JobScheduler yang mendapatkan prioritas proses lebih tinggi, akses jaringan, dan langsung dijalankan terlepas dari pembatasan daya seperti Penghemat Baterai atau Istirahatkan. Untuk kompatibilitas ke belakang, kami juga telah memasukkan expedited job ke dalam rilis terbaru library Jetpack WorkManager. Selain itu, untuk mengurangi gangguan bagi pengguna, kami sekarang menunda tampilan beberapa notifikasi layanan latar depan hingga 10 detik. Ini memberi kesempatan tugas yang berumur pendek untuk menyelesaikan prosesnya sebelum notifikasinya ditampilkan. Selengkapnya di sini.
Penyisipan beragam konten - Pengguna menyukai gambar, video, dan konten ekspresif lainnya, tetapi menyisipkan dan memindahkan konten ini di aplikasi tidak selalu mudah. Untuk mempermudah aplikasi Anda menerima konten yang kompleks, kami memperkenalkan API terpadu baru yang memungkinkan Anda menerima konten dari sumber apa pun: clipboard, keyboard, atau seret-dan-lepaskan. Anda bisa menyematkan antarmuka baru, OnReceiveContentListener, ke komponen UI dan mendapatkan callback saat konten dimasukkan melalui mekanisme apa pun. Callback ini menjadi satu tempat bagi kode Anda untuk menangani penyisipan semua konten, dari teks biasa dan teks bergaya hingga file markup, gambar, video, audio, dan lainnya. Untuk kompatibilitas ke belakang, kami telah menambahkan API terpadu ke Androidx. Selengkapnya di sini.
Efek kombinasi audio-haptik - Di Android 12, aplikasi bisa memberikan masukan kombinasi haptik dan audio melalui vibrator ponsel. Kekuatan dan frekuensi getaran berasal dari sesi audio, sehingga Anda bisa menciptakan pengalaman game dan audio yang lebih imersif. Sebagai contoh, aplikasi panggilan video bisa menggunakan nada dering khusus untuk mengidentifikasi penelepon melalui masukan haptik, atau Anda dapat menyimulasikan medan yang tidak rata dalam game balapan. Selengkapnya di sini.
Audio multi-saluran - Android 12 menyertakan beberapa penyempurnaan audio dengan informasi spasial. Fitur ini menambahkan dukungan pemutaran MPEG-H dalam mode passthrough dan offload, audio mixer, resampler, dan efek telah dioptimalkan hingga 24 saluran (jumlah maksimum sebelumnya adalah 8).
Peningkatan API mode imersif untuk navigasi gestur - Kami telah menyederhanakan mode imersif sehingga navigasi gestur lebih mudah dan konsisten, misalnya saat menonton video, membaca buku, atau bermain game. Kami tetap melindungi aplikasi dari gestur yang tidak disengaja saat menggunakan layar-penuh yang terkait dengan game, tetapi dalam pengalaman layar-penuh atau imersif lainnya (misalnya, penampil video, membaca, galeri foto), untuk aplikasi yang menargetkan platform baru, kami mengubah nilai default untuk memungkinkan navigasi pengguna di ponsel dengan sekali usap. Selengkapnya di sini.
Update UI notifikasi - Kami memperbarui desain notifikasi untuk membuatnya lebih modern, lebih mudah digunakan, dan lebih fungsional. Dalam pratinjau pertama ini, Anda akan melihat perubahan dari laci dan kontrol ke template-nya sendiri. Kami juga mengoptimalkan transisi dan animasi di seluruh bagian sistem agar berjalan lebih mulus. Sebagai bagian dari update ini, untuk aplikasi yang menargetkan Android 12, kami mendekor notifikasi yang berisi konten khusus dengan ikon dan memperluas kemampuan agar cocok dengan semua notifikasi lainnya. Selengkapnya di sini.
Notifikasi yang lebih cepat dan responsif - Bila pengguna mengetuk notifikasi, mereka berharap akan langsung masuk ke aplikasi - lebih cepat lebih baik. Untuk memenuhi ekspektasi tersebut, developer harus memastikan bahwa pengetukan notifikasi akan langsung memicu Activity, daripada menggunakan “trampolin” - layanan atau penerima siaran perantara - untuk memulai Activity. Trampolin notifikasi bisa menyebabkan penundaan yang signifikan dan memengaruhi pengalaman pengguna. Agar notifikasi tetap responsif, Android 12 akan memblokir trampolin notifikasi dengan mencegahnya meluncurkan Activity targetnya, dan kami meminta developer untuk berpindah dari pola ini. Perubahan hanya berlaku untuk aplikasi yang menargetkan platform baru, tetapi untuk semua aplikasi kami akan menampilkan toast untuk membuat trampolin terlihat oleh Anda dan pengguna. Selengkapnya di sini.
Panggilan IPC Binder yang ditingkatkan - Sebagai bagian dari pekerjaan kami pada kinerja, kami berfokus pada pengurangan variabilitas sistem. Kami telah memperhatikan latensi dan distribusi beban kerja, dan membuat optimalisasi yang mengurangi pengalaman median dari bagian paling belakang, atau kasus penggunaan persentil 99%. Untuk itu, kami telah menargetkan peningkatan pada panggilan binder sistem dengan menambahkan strategi caching ringan dan berfokus pada upaya menghilangkan perebutan kunci untuk meningkatkan distribusi latensi. Hal ini menghasilkan peningkatan kinerja kira-kira 2x lipat pada panggilan Binder secara keseluruhan, dengan peningkatan yang signifikan pada panggilan tertentu, misalnya peningkatan 47x dalam refContentProvider(), 15x pada releaseWakeLock(), dan 7,9x pada JobScheduler.schedule().
Kami berupaya membuat update lebih cepat dan lebih lancar dengan memprioritaskan kompatibilitas aplikasi saat kami meluncurkan versi platform baru. Di Android 12, kami membuat sebagian besar perubahan yang berhubungan dengan aplikasi bersifat pilihan untuk memberi Anda lebih banyak waktu, dan kami telah meng-update fitur dan proses untuk membantu Anda mempersiapkan lebih cepat. Kami juga telah menambahkan fungsionalitas baru ke update sistem Google Play untuk memberikan lingkungan yang lebih baik bagi aplikasi Anda di perangkat Android 12.
Semakin banyak Android yang di-update melalui Google Play - Kami terus memperluas investasi dalam update sistem Google Play (Project Mainline) untuk memberikan lingkungan yang lebih konsisten dan aman pada aplikasi di seluruh perangkat. Di Android 12 kami telah menambahkan modul Android Runtime (ART) agar bisa mendorong update ke runtime inti dan library pada perangkat yang menjalankan Android 12. Kami bisa meningkatkan kinerja dan ketepatan runtime, mengelola memori dengan lebih efisien, dan membuat operasi Kotlin lebih cepat - semuanya tanpa memerlukan update sistem lengkap. Kami juga memperluas fungsionalitas modul yang sudah ada - misalnya dengan menyediakan fitur transcoding media kompatibel di dalam modul yang dapat di-update.
Mengoptimalkan untuk tablet, perangkat foldable, dan TV - Dengan semakin banyak orang yang menggunakan aplikasi di perangkat layar-besar seperti perangkat foldable, tablet, dan TV, sekaranglah waktu yang tepat untuk memastikan bahwa aplikasi atau game Anda sudah siap. Mulailah dengan mengoptimalkan untuk tablet dan membangun aplikasi untuk perangkat foldable. Dan, untuk layar terbesar di rumah, pratinjau Android 12 yang pertama untuk Android TV juga tersedia. Selain menghadirkan fitur Android terbaru ke TV dengan pratinjau ini, Anda juga bisa menguji aplikasi Anda pada pengalaman TV Google yang sepenuhnya baru. Ketahui selengkapnya di situs Android TV Developers dan mulailah dengan ADT-3 developer kit.
Daftar antarmuka non-SDK yang di-update - Kami membatasi antarmuka non-SDK tambahan, dan seperti biasa, kami menantikan masukan dan permintaan Anda untuk API publik yang setara.
Lebih mudah menguji dan men-debug perubahan - Untuk memudahkan Anda menguji perubahan pilihan yang dapat memengaruhi aplikasi, banyak di antaranya yang kami jadikan agar dapat diaktifkan atau dinonaktifkan. Dengan pengubah ini, Anda bisa mengaktifkan atau menonaktifkan masing-masing perubahan secara paksa dari opsi Developer atau adb. Lihat detail selengkapnya di sini.
[Sisipkan gambar 4]
Pengubah kompatibilitas aplikasi di Opsi Developer.
Tahapan pencapaian stabilitas platform - Seperti tahun lalu, kami memberi tahu Anda tahapan pencapaian Stabilitas Platform jauh sebelumnya, untuk memberi Anda lebih banyak waktu dalam merencanakan pekerjaan kompatibilitas aplikasi. Pada tahapan pencapaian ini, kami tidak hanya akan memberikan API SDK/NDK final, tetapi juga API internal final dan perilaku sistem yang dihadapi aplikasi. Kami berharap bisa mencapai Stabilitas Platform paling lambat Agustus 2021, dan Anda memiliki waktu beberapa minggu sebelum rilis resmi untuk melakukan pengujian akhir. Detail timeline rilis bisa dilihat di sini.
Pratinjau Developer memiliki semua yang Anda butuhkan untuk mencoba fitur Android 12, menguji aplikasi, dan memberi kami masukan. Anda bisa memulai hari ini dengan mem-flash citra sistem perangkat ke perangkat Pixel 3 / 3 XL, Pixel 3a / 3a XL, Pixel 4 / 4 XL, Pixel 4a / 4a 5G, atau Pixel 5. Jika tidak memiliki perangkat Pixel, Anda bisa menggunakan citra sistem 64-bit dengan Android Emulator di Android Studio.
Jika sudah siap, berikut ini beberapa hal yang harus Anda lakukan:
Kami akan meng-update citra sistem pratinjau dan SDK secara berkala selama siklus rilis Android 12. Rilis pratinjau awal ini untuk kalangan developer saja dan tidak ditujukan untuk penggunaan sehari-hari atau konsumen, sehingga kami hanya menyediakannya melalui download manual. Anda bisa mem-flash citra pabrik ke perangkat Pixel, atau melakukan sideload citra OTA ke perangkat Pixel yang menjalankan Android 11, sehingga Anda tidak perlu membuka kunci bootloader atau menghapus data. Apa pun cara yang dipilih, setelah menginstal build pratinjau secara manual, Anda secara otomatis akan mendapatkan update lewat jaringan seluler untuk semua pratinjau dan Beta selanjutnya. Selengkapnya di sini.
Dengan semakin dekatnya produk final, kami akan mengajak konsumen ikut mencobanya, saat itu kami juga akan membuka pendaftaran melalui Android Beta. Tunggulah detailnya, tetapi untuk saat ini perlu dicatat bahwa Android Beta sekarang belum tersedia untuk Android 12.
Untuk informasi selengkapnya, kunjungi situs developer Android 12.
Kompatibilitas dengan TV - Dengan waktu tonton TV yang semakin meningkat, sekaranglah waktu yang tepat untuk membawa aplikasi atau game Anda ke layar besar. Untuk membantu Anda menguji aplikasi, pratinjau Android 12 pertama untuk Android TV juga tersedia hari ini. Selain menghadirkan fitur Android 12 ke TV dengan pratinjau ini, Anda juga bisa menguji aplikasi pada pengalaman Google TV yang sepenuhnya baru. Ketahui selengkapnya di situs Android TV Developers dan mulailah dengan ADT-3 developer kit.
Kompatibilitas dengan faktor bentuk lain - Dengan meningkatnya waktu tonton TV dan penggunaan tablet, sekaranglah waktu yang tepat untuk memastikan aplikasi atau game Anda siap untuk layar yang lebih besar. Mulailah dengan mengoptimalkan untuk tablet dan membangun aplikasi untuk perangkat foldable. Dan, untuk layar terbesar di rumah, pratinjau Android 12 pertama untuk Android TV juga tersedia hari ini. Selain menghadirkan fitur Android terbaru ke TV dengan pratinjau ini, Anda juga bisa menguji aplikasi Anda pada pengalaman TV Google yang sepenuhnya baru. Ketahui selengkapnya di situs Android TV Developers dan mulailah dengan ADT-3 developer kit.
Layar besar dan perangkat foldable - Kami melihat pertumbuhan pesat di tablet karena banyak pengguna yang menghabiskan lebih banyak waktu di rumah. Sekaranglah waktu yang tepat untuk memastikan aplikasi atau game Anda dioptimalkan untuk tablet. Kami juga melihat momentum pada perangkat foldable, dan di Android 12 kami berupaya memperluas dukungan untuk perangkat foldable di seluruh platform. Developer bisa mulai membangun untuk perangkat baru ini sekarang - membangun aplikasi untuk perangkat foldable adalah sumber daya yang disarankan, dan coba menggunakan Jetpack Window Manager untuk mempercepat development.
Android TV - Waktu tonton TV meningkat, dan lebih dari 75% rumah (di AS) sekarang memiliki TV yang terhubung ke internet. Untuk menyiapkan aplikasi Anda bagi layar besar, pratinjau Android 12 pertama untuk Android TV juga tersedia hari ini. Pratinjau ini menghadirkan fitur Android 12 ke TV, selain penyesuaian khusus untuk TV. Dengan pratinjau ini, developer juga dapat menguji pengalaman Google TV yang sepenuhnya baru di ADT-3 developer kit. Ketahui selengkapnya dan mulailah di situs developer Android TV.
Mengurangi visibilitas notifikasi waktu-singkat - Kami juga sedang berusaha meningkatkan pengalaman pengguna untuk notifikasi dengan menunda tampilan notifikasi layanan latar depan selama beberapa detik. Dengan menunggu sebentar, banyak jenis tugas layanan latar depan yang memiliki kesempatan untuk diselesaikan dan tidak perlu ditampilkan kepada pengguna. Hal ini akan membantu mengurangi jumlah notifikasi yang tidak dapat ditindaklanjuti, yang hanya muncul sesaat. Selengkapnya di sini.
[Sisipkan gambar 5]
[disebutkan dalam referensi yang lebih singkat pada update UI]
[dipertahankan untuk DP2 per tim 2/4]
Peningkatan Picture in Picture (PIP) - untuk pengguna navigasi gestur, kami meningkatkan cara transisi aplikasi ke mode gambar-dalam-gambar (PIP) dengan usap-ke-atas-untuk-ke-beranda. Jika aplikasi mengaktifkan auto-PIP, sekarang sistem secara langsung mentransisikan aplikasi ke mode PIP pada atas-ke-beranda, daripada menunggu animasi atas-ke-beranda selesai. Hal ini membuat transisi menjadi lebih mulus dan meningkatkan kinerja yang dirasa. Kami juga meningkatkan perubahan ukuran jendela PIP untuk konten non-video. Sekarang aplikasi bisa mengaktifkan perubahan ukuran yang mulus agar sistem bisa mengubah ukuran PIP Activity bila diperlukan.
5G - 5G semakin populer di kalangan operator dan beberapa perangkat baru dipasarkan untuk menghadirkan teknologi baru ini kepada pengguna. Di Android 12 kami terus membangun dukungan platform Android untuk 5G sembari memberikan akses aplikasi melalui API konektivitas yang sudah ada. Yang baru dalam rilis ini adalah pembagian jaringan 5G, yang memungkinkan operator menawarkan layanan tersegmentasi pada perusahaan besar.
Jetpack Compose adalah toolkit modern Android untuk membangun UI native. Jetpack Compose memungkinkan Anda menghidupkan aplikasi secara cepat dengan sedikit kode, fitur canggih, dan API Kotlin yang intuitif. Dengan Jetpack Compose versi Beta yang dirilis hari ini, sekarang adalah waktu yang tepat untuk mempelajari Compose dan bersiap mengadopsinya. Untuk membantu Anda memulai Jetpack Compose, kami meluncurkan #AndroidDevChallenge baru!
Selama empat minggu ke depan, #AndroidDevChallenge akan meluncurkan serangkaian tantangan mingguan untuk membantu Anda membangun aplikasi yang lebih baik dengan lebih cepat menggunakan Jetpack Compose. Berorientasi pada “wawasan peluncuran," setiap tantangan berfokus pada area baru Compose, dari animasi, Material Theming, composable, daftar, dan banyak lagi! Ikutilah untuk memenangkan hadiah baru setiap tantangan, dengan merebut lebih dari seribu hadiah termasuk Pixel 5*. Tantangan pertama dimulai hari ini!
Setiap minggu akan muncul tantangan baru dengan aturan dan tugas tersendiri. Mulai hari ini, setiap Rabu kami akan memublikasikan postingan blog berisi deskripsi lengkap tentang hal-hal yang perlu Anda lakukan dan berapa lama harus menyelesaikan tugas tersebut. Setiap tantangan akan membantu Anda lebih familier dengan model mental compose dan berbagai API Compose - dari Composable dasar seperti Teks dan Daftar, hingga status, animasi, dan lainnya.
Solusi Anda untuk setiap tantangan harus diimplementasikan di repositori GitHub. Untuk membantu Anda, kami telah membuat template repositori Github yang berisi Hello World! di Compose dan persiapan integrasi berkelanjutan.
Mari kita mulai #AndroidDevChallenge dengan gonggongan: membuat aplikasi adopsi anak anjing! Aplikasi harus berisi layar ringkasan yang menampilkan daftar anak anjing, dan layar detail yang menampilkan detail setiap anak anjing. Anda memiliki waktu hingga 2 Maret, 23:59 PST untuk mengirimkan aplikasi.
UI Anda harus sepenuhnya dibuat di Compose. Kiriman hanya akan dinilai berdasarkan layer UI aplikasi Anda. Untuk membantu Anda dengan implementasi, lihat dokumentasi Compose mengenai layout, daftar, teks, dan navigasi. Cobalah pathway Compose untuk mendapatkan beberapa pembelajaran dasar, dengan codelab yang mencakup beberapa topik berguna dalam menyelesaikan tantangan ini.
Apakah Anda orang yang lebih menyukai 🐱 daripada 🐶? Kami dengan senang hati menerima kiriman aplikasi segala jenis adopsi hewan peliharaan.
Kami menantikan apa yang bisa Anda bangun!
Tantangan pertama kami dimulai dengan hadiah yang bisa menjadi sahabat sempurna saat Anda mendalami Compose: trofi edisi terbatas jawara Jetpack Compose kami, yang terbuat dari LEGO. 500 orang pertama yang berhasil menyelesaikan tantangan ini dan mengirimkan aplikasinya bisa menambahkan trofi ini ke koleksi patung Android mereka, yang menunjukkan bahwa Anda adalah pemenang minggu pertama #AndroidDevChallenge.
Komunitas adalah inti Jetpack Compose dan masukan Anda membantu kami membangun produk yang lebih baik:
*Akan ada hadiah baru untuk tantangan setiap minggu; bila hadiah mingguan berupa Google Pixel 5, kami akan menawarkan kartu hadiah elektronik dengan nilai setara untuk pemenang yang tinggal di negara yang tidak tersedia Google Pixel 5. Lihat aturan resmi untuk informasi selengkapnya.
Pendaftaran untuk Google for Startups Accelerator Indonesia yang pertama cohort 2021, telah dibuka.
Selamat datang di Now in Android, panduan berkelanjutan Anda tentang apa yang baru dan penting dalam dunia development Android.
Episode Now in Android ini juga ditawarkan dalam bentuk video dan podcast. Isinya sama, tetapi tidak perlu banyak membaca. Versi artikel (teruslah membaca!) masih menjadi tempat untuk mendapatkan link ke semua konten yang dibahas.
Klik link di bawah, atau cukup berlangganan podcast di aplikasi klien MAD Skills favorit Anda.
Now in Android: 33 - Motion Layout, AndroidX, Hilt, WorkManager, dan lainnya!
Seri MAD Skills terus berlanjut, dengan konten teknis tentang development Android modern.
Seri tentang penggunaan Kotlin dengan Jetpack API telah selesai sejak Now in Android sebelumnya, diakhiri dengan live streaming Tanya Jawab. Terima kasih atas semua pertanyaannya (terlalu banyak untuk kami jawab, bahkan ketika kami sudah menyediakan banyak waktu!), dan periksa rekamannya untuk melihat apa yang terjadi.
Seperti biasa, tersedia blog ringkasan untuk seri tersebut, dengan semua link ke video dan artikel episode, serta link ke teknologi yang relevan:
MAD Skills Kotlin dan Jetpack: ringkasan
MADSkills berlanjut dengan seri baru dari Sean McQuillan tentang MotionLayout API dan alat Motion Editor untuk membuat animasi UI yang kompleks. MotionLayout menyediakan kemampuan yang mirip dengan API Transition Android, tetapi dengan fleksibilitas dan kemampuan yang jauh lebih besar, sehingga kita bisa membuat animasi khusus yang lebih kompleks. Ada juga editor visual canggih, yang menjadikan pembuatan animasi kompleks semakin mudah.
Animasi ConstraintSetVideo ini membahas bagaimana ConstraintSets digunakan untuk mendefinisikankan status berbeda yang dianimasikan UI. Selama proses ini, Sean menunjukkan cara menggunakan Motion Editor di Android Studio untuk membuat dan mengedit transisi ini.
KeyframesEpisode ini menunjukkan cara menggunakan Keyframes dalam animasi MotionLayout untuk menyesuaikan animasi dengan mengubah nilai berbagai properti dari waktu ke waktu. Misalnya, Anda bisa menggunakan keyframes untuk mengubah jalur yang diambil objek antara awal dan akhir, sebagai ganti mengikuti jalur linier default.
Beberapa ConstraintSetsDalam episode ketiga ini, Sean menunjukkan cara menambahkan ConstraintSets, di luar dua input default (awal + akhir), untuk membuat animasi atau transisi kompleks yang mengalir melalui beberapa status antara awal dan akhir.
Ada beberapa episode lainnya yang akan hadir dalam seri MotionLayout. Pastikan memeriksa playlist untuk melihat semuanya. Lihat juga playlist MotionTags (selengkapnya di bawah ini!) untuk screencast tentang area spesifik MotionLayout API.
Untuk konten yang berkelanjutan, pastikan memeriksa playlist MAD Skills di YouTube, artikel di Medium, atau halaman pembuka yang praktis ini yang akan menunjukkan semuanya.
Di antara sekian rilis inkremental terbaru dari berbagai library AndroidX, berikut ini rilis stabil yang signifikan:
Autofill 1.1.0: Versi ini memperkenalkan API yang memungkinkan beberapa kemampuan baru saran dalam baris yang diperkenalkan di Android 11.
Biometric 1.1.0: Versi ini menambahkan kemampuan dan API untuk mendukung kemampuan autentikasi biometrik Android 11. Rilis ini adalah penyempurnaan ulang penting dan banyak mengurangi footprint ukuran aplikasi dari library tersebut, serta memberikan beragam peningkatan dan perbaikan lainnya selama prosesnya.
Transition 1.4.0: Versi ini menambahkan API KTX (library ekstensi Kotlin Android) untuk transisi AndroidX.
WorkManager 2.5.0: Rilis ini menambahkan kemampuan baru, dan artefak multiproses-kerja baru, untuk aplikasi yang menggunakan banyak proses, serta dukungan alat WorkManager baru di Android Studio versi canary terbaru (Arctic Fox). Untuk mengetahui selengkapnya tentang rilis ini, lihat artikel WorkManager yang ditautkan di bagian bawah.
Artikel baru dari Manuel Vivo ini membahas ViewModelComponent baru dalam hierarki Hilt. ViewModelComponent memungkinkan cakupan tipe ke ViewModel tertentu sebagai ganti ActivityRetainedComponent, yang cakupan tipenya juga digunakan oleh semua ViewModels.
Menggunakan ViewModelComponent Hilt
Ben Weiss memublikasikan artikel di library WorkManager yang baru saja dirilis, versi 2.5.0. Rilis ini memungkinkan penggunaan WorkManager yang lebih mudah dalam aplikasi multiproses, bersama perbaikan bug dan peningkatan lainnya.
WorkManager 2.5.0 stabil dirilis
MotionTags adalah kumpulan video screencast, yang membahas area tertentu MotionLayout API secara mendalam. Dua episode terakhir dalam seri ini baru saja diposting:
KeyTimeCycleEpisode ini dibangun berdasarkan video KeyCycles sebelumnya, yang menunjukkan cara membuat animasi kompleks.
KeyTriggerEpisode terakhir seri ini membahas KeyTrigger, yang bisa digunakan untuk membantu aplikasi mengontrol animasi dengan callback yang disebabkan oleh status dalam animasi (“pemicu”).
Ada episode lain dari Android Developers Backstage yang diposting sejak Now in Android terakhir. Lihatlah pada link di bawah ini, atau di klien podcast favorit Anda.
Untuk mengawali tahun dengan Android Developers Backstage, kami berdiskusi dengan Wale Ogunwale dan Rob Carr, dari tim WindowManager. Kami berbicara tentang beberapa riwayat (dan kompleksitas!) WindowManager, serta beberapa development dan fitur terbaru yang dimungkinkannya pada masa mendatang.
Episode 155: WindowManagerManagers
Itu saja untuk saat ini. Jadi, bukalah MAD untuk mengetahui episode Kotlin/Jetpack dan MotionLayout lainnya! Lihat rilis stabil AndroidX terbaru! Baca artikel baru di Hilt dan WorkManager, serta tonton video MotionTags terbaru! Dengarkan podcast ADB terbaru dan segera kembali ke sini untuk mendapatkan update berikutnya dari dunia developer Android.
Diposting oleh Eric Bahna, Product Manager
Pada bulan Desember, kami membuka Google Play Store untuk memublikasikan aplikasi Android Auto baru untuk pengujian tertutup. Hari ini, Anda bisa menjangkau lebih banyak pengendara dengan memublikasikan aplikasi navigasi, parkir, dan pengisi daya untuk membuka jalur pengujian di Google Play Store. Dengan pengujian terbuka, tidak ada batasan jumlah pengguna yang bisa mendownload aplikasi dan Anda tidak perlu mengelola daftar alamat email. Ini adalah tahap pencapaian penting yang semakin mendekatkan kita untuk menyediakan aplikasi ini bagi semua pengguna dalam produksi. Mulailah gunakan Android for Cars App Library dan pilih jalur pengujian terbuka di Konsol Play.
TomTom AmiGO, salah satu mitra akses awal kami
Untuk memberi Anda gambaran tentang rencana kami ke depan, kami sedang berupaya menambahkan library ke Android Jetpack! Ini akan memberi Anda konsistensi ekstra dengan Jetpack API lainnya dan visibilitas ke fitur-fitur baru. Saat library Jetpack siap, melakukan migrasi aplikasi Anda dari library yang sudah ada akan menjadi sangat mudah - ubah namespace dan sesuaikan beberapa panggilan API. Setelah kami menstabilkan library di Jetpack, kami akan menyiapkan Google Play Store untuk memublikasikan aplikasi baru ini ke jalur produksi.
Anda bisa memulai hari ini - Anda tidak perlu menunggu library Jetpack.
Kami sangat menantikan aplikasi yang telah Anda buat dan ingin segera mencobanya!
Selamat datang di Now in Android, panduan berkelanjutan Anda tentang apa yang baru dan penting dalam dunia pengembangan Android.
Sudah beberapa minggu sejak Now in Android sebelumnya diluncurkan, sebelum liburan — mari kita lihat apa yang terjadi selama itu di dunia Android.
Seri MAD Skills terus berlanjut, dengan konten teknis tentang pengembangan Android modern.
Seri tentang penggunaan Kotlin dengan API Jetpack telah berjalan. Sejak beberapa episode pertama yang dibahas terakhir kali, kami telah menambah tiga lagi. Selain menawarkan informasi tentang penggunaan library Room dan WorkManager secara umum, episode ini juga menawarkan panduan khusus tentang penggunaan fitur Kotlin, seperti coroutine, untuk menyederhanakan berbagai hal.
Dalam episode ini, Florina Muntenescu menunjukkan cara menggunakan dan menguji Room Kotlin API untuk kebutuhan penyimpanan database lokal Anda.
Atau dalam bentuk artikel:
Menggunakan dan menguji Room Kotlin API
Menggunakan WorkManager Kotlin APIKali ini, Florina menunjukkan cara menggunakan WorkManager untuk menjadwalkan pekerjaan asinkron, baik secara langsung maupun yang bisa ditangguhkan:
WorkManager — Kotlin API
Tips Komunitas: Kotlin untuk Kecepatan dan Kualitas PengembanganMagda Miu, seorang Google Developer Expert (GDE) untuk Android, menjelaskan cara timnya menggunakan Kotlin untuk menulis kode dengan lebih gampang dan mudah dipelihara untuk ekstensi vendor CameraX.
Kemudian, akhir minggu ini, kami akan menayangkan live streaming Tanya Jawab untuk menyelesaikan seri Kotlin & Jetpack, yang disiarkan pada hari Kamis pukul 10.00 pagi Waktu Pasifik. Live streaming ini mungkin sudah ditayangkan saat Anda membaca artikel ini, tetapi Anda bisa menonton rekamannya untuk mendengarkan percakapan dan mengetahui jawaban atas pertanyaan yang diajukan.
Pastikan mengikutinya minggu depan, kami akan memulai seri MAD Skills yang baru. Untuk konten yang berlangsung, pastikan memeriksa playlist MAD Skills di YouTube, artikel di Medium, atau halaman landing praktis ini yang akan menunjukkan semuanya.
Kursus Dasar-Dasar Android di Kotlin sekarang memiliki unit baru!
Unit 3: NavigasiUnit ini menawarkan tutorial dan contoh komponen Navigasi, serta API lainnya di library Komponen Arsitektur Android.
Isai Damier memublikasikan artikel baru tentang kriptografi, autentikasi, dan keamanan. Ia banyak membahas latar belakang menarik dalam kriptografi, dan menjelaskan mengapa solusi aman yang melibatkan kriptografi umumnya juga harus melibatkan autentikasi biometrik.
Tingkatkan kriptografi aplikasi Anda, dari autentikasi pesan hingga keberadaan pengguna
Florina Muntenescu memublikasikan artikel tentang peningkatan produktivitas dari penggunaan Kotlin. Jika sudah banyak menulis kode Kotlin, Anda mungkin sudah mengetahuinya. Namun jika Anda sedang bertanya-tanya akankah mulai mendalami penggunaan Kotlin untuk pekerjaan, atau ingin meyakinkan orang lain tentang proyek Anda, artikel ini akan menjelaskan beberapa detail konkret yang bisa membantu Anda.
Semakin produktif dengan Kotlin
Meghan Mehta memposting artikel ketiga dalam serinya mengenai RecyclerView. Salah satu kebutuhan paling umum untuk RecyclerView adalah menangani klik pengguna. Maksud saya, mengklik item dalam daftar biasanya akan menyebabkan… sesuatu, bukan? Di artikel ini, Meghan menunjukkan cara yang direkomendasikan untuk menangani fungsionalitas ini.
Menangani peristiwa klik di RecyclerView
Ada episode lain dari Android Developers Backstage yang diposting sejak Now in Android terakhir. Lihatlah pada link di bawah ini, atau di klien podcast favorit Anda:
Untuk mengakhiri tahun ini (dan wow! sungguh tahun yang luar biasa!), Tor Norbye, Romain Guy, dan saya merekam episode penuh host (tanpa tamu?), di sini kami membicarakan beberapa hal yang terjadi tahun lalu ketika kami menemukan berbagai cara untuk bekerja, serta beberapa pengembangan terkini dalam alat dan ruang platform Android.
Episode 154: Selesai!
Itu saja untuk saat ini. Jadi, bukalah MAD untuk mengetahui konten Kotlin/Jetpack lainnya! Ikuti kursus tentang Navigasi! Bacalah beberapa artikel tentang keamanan, produktivitas Kotlin, dan RecyclerView! Dengarkan podcast ADB terbaru! Dan segera kembali ke sini untuk mendapatkan update berikutnya dari dunia developer Android.