Diposting oleh Hoi Lam, Kualitas Aplikasi Android
Sejak peluncuran Android lebih dari 10 tahun lalu, platform dan harapan pengguna terus meningkat. Pengalaman pengguna terus meningkat melalui desain material hingga pentingnya dan kemajuan dalam privasi. Kami tahu Anda ingin aplikasi memberikan pengalaman pengguna yang luar biasa. Pada saat yang sama, kami juga tahu tidaklah mudah untuk mengetahui area mana yang harus ditangani terlebih dahulu. Karena itulah kami meluncurkan bagian Kualitas Aplikasi baru di situs developer kami untuk membantu Anda selalu mengikuti informasi tentang aspek utama kualitas aplikasi dan menyediakan sumber daya terkait.
Di rilis pertama, kami telah mengupdate daftar periksa Kualitas Aplikasi Inti untuk memperhitungkan rilis Android terbaru serta tren ekosistem aplikasi saat ini. Berikut beberapa sorotan dalam update ini:
Selanjutnya, kami akan memperbarui daftar ini setiap tiga bulan untuk memastikannya selalu di-update. Selain itu, kami akan mengupdate daftar periksa kualitas untuk faktor bentuk lainnya.
Kami sedang mengerjakan alat tambahan dan praktik terbaik untuk memudahkan Anda membangun aplikasi berkualitas di Android. Kami tidak sabar untuk memperkenalkan peningkatan baru ini kepada Anda. Nantikan informasi selanjutnya!
3...2...1… Saatnya untuk tantangan lain! Selamat datang di minggu kedua #AndroidDevChallenge! Kami senang melihat kiriman kreatif Anda di minggu ke-1 jadi kami sangat menantikan apa yang akan Anda buat di minggu ke-2. Inilah tantangan Anda:
Buat penghitung mundur layar tunggal yang berfungsi. Anda memiliki waktu hingga 9 Maret, pukul 23.59 Waktu Pasifik untuk mengirimkan entri. 1
UI Anda harus sepenuhnya dibuat di Compose. Untuk membantu implementasi Anda, lihat dokumentasi Compose mengenai status dan animasi. Cobalah pathway Compose untuk mendapatkan beberapa pembelajaran langsung, dengan codelab yang mencakup beberapa topik berguna untuk menyelesaikan tantangan ini.
Solusi Anda harus diimplementasikan di repositori GitHub. Buat salinan template repositori Github ini dan ikuti petunjuk di README. Template tersebut berisi Hello World! dasar di Compose dan continuous integration setup.continuous integration setup.
Hadiah minggu kedua kami adalah karya seni, dalam hal ini, Composing adalah kolaborasi dengan Anda! 500 orang pertama yang berhasil menyelesaikan tantangan ini akan menerima poster Jetpack Compose dan satu set pensil Android, pengalaman mewarnai penghilang stres. Selain itu, Anda akan mendapatkan poster strip komik Jetpack Compose edisi terbatas, yang memetakan bagaimana Tim Jetpack menyelamatkan galaksi dari UI yang buruk.
Komunitas adalah inti Jetpack Compose dan masukan Anda membantu kami membangun produk yang lebih baik:
1 Tinjaulah link untuk aturan resmi lengkap yang terkait dengan entri.
Diposting oleh Luli Perkins, Developer Relations Program Manager
Kita awali #AndroidDevJourney dengan memberi kesempatan kepada anggota komunitas untuk berbagi cerita melalui platform sosial kita. Setiap Sabtu dari bulan Januari sampai Juni, kami akan menampilkan developer baru di akun Twitter kami. Kami sangat banyak menerima kisah inspiratif dan berharap Anda menikmati cerita yang kami pilih di bawah ini.
Agar berkesempatan tampil dalam seri spotlight Februari, tweet-kan cerita Anda kepada kami dengan menggunakan #AndroidDevJourney.
Ceritakan tentang perjalanan Anda menjadi Developer Android dan cara memulainya.
Perjalanan Android saya dimulai saat tahun ke-4 kuliah sarjana. Saya mendapat kesempatan magang di sebuah startup bernama GreenAppleSolutions. Di sana, saya mendapat kesempatan mengerjakan proyek Android dari awal dan untungnya project pertama saya dipublikasikan di Play Store. Selama masa magang ini, saya merasa Android sangat menarik karena semua kode yang ditulis dapat langsung dilihat hasilnya di perangkat Anda. Saya mulai menyukai Android dan memutuskan untuk menggunakan Android sebagai jalur karier saya.
Apa satu pintasan, tips, atau retasan yang menurut Anda paling penting?
Saya penggemar berat Android Lint, yang telah berulang kali menyelamatkan saya karena tidak perlu menemukan secara manual panggilan/API yang tidak digunakan lagi. Android Lint juga membantu saya mengikuti praktik terbaik dan membuat kode menjadi lebih optimal, aman, dan berkinerja tinggi.
Apa satu nasihat yang Anda harapkan dari seseorang saat memulai perjalanan Android?
Sebenarnya ada dua,
Lucu! Saya mulai bekerja dengan perangkat seluler di iOS pada tahun 2010, tetapi kemudian pada tahun 2011 project akhir perguruan tinggi saya adalah sebuah aplikasi untuk konstruksi sipil dan tidak ada anggota tim yang memiliki Mac, jadi kami membuatnya untuk Android (Ngomong-ngomong, kami dapat 10!)! Saat itu saya mengajar teknologi kepada beberapa orang dari pemerintah dan tidak terlalu menyukai coding, tetapi setelah project tahun 2011, saya mendapat pekerjaan pertama sebagai Junior Android Developer dan itu membuat saya sangat terpikat pada platform ini dan tidak bisa lepas darinya!
Saya dapat bekerja dengan Java di Eclipse + ADT, Holo, ActionBarSherlock, awal Desain Material, dan menghadiri Google I/O ’13 ketika Google mengumumkan Android Studio, yang merupakan pengalaman sangat menakjubkan dan mengesankan bagi saya, bukan hanya karena pembelajarannya, tetapi juga orang-orang yang saya temui yang banyak membantu saya!
Sejak saat itu, saya bekerja dengan perangkat seluler dan, sebagian besar, dengan Android selama lebih dari 10 tahun, membantu banyak unicorn dan perusahaan teknologi Brasil dengan project Android mereka dan sejak 2016 saya adalah salah satu Google Developer Experts untuk Android di sini.
Selain itu, saya menyukai komunitas pengembangan dan desain, jadi saya mencoba untuk terlibat dengan mereka sebanyak mungkin. Saya mantan penyelenggara GDG São Paulo dan kreator serta penyelenggara Kotlin Meetup São Paulo dan Android Dev BR - komunitas Android Brasil/lusofon terbesar di dunia, dengan lebih dari 7.500 anggota!
Yang terakhir, saya juga terlibat dengan komunitas startup nasional, sebagai mentor untuk program ACE Startups dan Google For Startups Accelerator di Brasil.
Apa satu pintasan, tips, atau retasan pengembangan Android yang menurut Anda paling penting?
Ada pintasan sederhana tetapi ampuh di Android Studio yang sering saya gunakan, yaitu pemilihan kejadian multi-kursor, yang bisa diakses menggunakan Ctrl + G (macOS) / Alt + J (Windows + Linux) untuk memilih kejadian inkremental dan/atau Ctrl + Cmd + G / Shift + Ctrl + Alt + J untuk memilih semua kejadian. Kelihatannya konyol, tetapi pintasan ini sangat membantu saya menulis kode, terutama dalam hal pemfaktoran ulang. Saya menggunakannya setiap hari!
Saya pikir saya akan meringkas nasihat saya dalam dua kata: belajar dan berbagi.
Belajar sebanyak mungkin, tidak hanya dari konten luar biasa yang tersedia di dokumentasi resmi dan komunitas, tetapi juga belajar dari kesalahan sendiri melalui latihan yang konsisten. Tersedia banyak konten gratis di internet, dan Google serta GDEs (Google Developer Experts) seperti saya juga bisa membantu Anda, jadi teruslah berlatih dan perluas pengetahuan Anda secara online!
Dan setelah Anda mempelajarinya, berbagilah dengan orang lain! Saya bisa seperti ini karena bisa berbagi apa yang tidak dapat saya temukan saat belajar, jadi tolong, bagikan pengetahuan Anda! Komunitas Android sungguh luar biasa dan sangat membantu, Anda bisa menghubungi kreator API dan library yang Anda gunakan di Twitter, Reddit, dan banyak tempat lainnya. Tulis artikel, rekam podcast atau video, ada banyak format yang bisa Anda gunakan.
Internet adalah solusi ampuh untuk belajar dan berbagi, saya sangat menyarankan Anda melakukannya di sana, dan saya siap membantu jika diperlukan! :)
Saya menjadi developer Android pada tahun 2015, saat mengerjakan ide bisnis pertama saya. Karena tidak mempunyai biaya untuk kembali sekolah, saya memutuskan untuk mencoba memulai bisnis sebagai gantinya. Saya meluncurkan aplikasi web, tetapi pelanggan saya bersikeras meminta aplikasi asli untuk kebutuhan mereka. Awalnya saya mencari seseorang yang lebih berpengalaman, tetapi akhirnya memutuskan untuk belajar sendiri cara membuat aplikasi Android. Maju cepat ke tahun 2017, dan salah satu cofounder Christian dan saya meluncurkan aplikasi Android untuk perusahaan kami, Qoins, di Google Play Store. Sejak itu, kami telah melayani puluhan ribu pelanggan Android dan melakukan beberapa kali penggalangan dana.
Apa satu pintasan, tips, atau retasan pengembangan Android yang menurut Anda sangat penting?
Kemampuan menguji Android yang dibangun di perangkat virtual adalah penyelamat saya. Banyak skenario berbeda yang harus diperhitungkan saat membuat aplikasi Android untuk ribuan perangkat berbeda. Alat seperti Firebase Test Labs, serta layanan perangkat virtual lainnya memungkinkan saya membuat skenario spesifik untuk pengujian praktis yang tidak dapat dilakukan dengan perangkat Android fisik yang saya miliki.
Tidak apa-apa membuat kesalahan; semua itu adalah bagian dari proses.
Perjalanan saya dimulai saat mendapatkan perangkat Android pertama, HTC Magic, di Google Developer Day 2009. Saat itu, saya masih mahasiswa dan menulis aplikasi pribadi dengan JavaFX, jadi saya memiliki pengalaman dan familier dengan Java. Kemudian saya segera mulai mentransfer aplikasi saya ke Android. Setelah lulus, saya bekerja di perusahaan software dan ingin mengembangkan aplikasi Android sebagai pekerjaan saya. Tetapi sepertinya tidak ada peluang di perusahaan itu. Jadi saya membuat perusahaan kecil sendiri yang merupakan agensi untuk mengembangkan aplikasi Android.
Ada banyak sekali. Jika saya harus memilih salah satu, itu adalah Android Studio. Saya selalu salut dengan kehebatan Android Studio karena saya memulai pengembangan aplikasi Android dengan Eclipse. (Saya juga tidak bisa hidup tanpa Kotlin, RecyclerView, ConstraintLayout ...)
Pintasan Android Studio yang sangat berguna bagi saya adalah Command + B (Deklarasi atau Penggunaan. Pintasan ini memungkinkan kita beralih antara deklarasi dan penggunaan. Ini sangat berguna untuk membaca kode sumber termasuk platform Android dan kode library.
Baca dokumen resmi. Baca kode sumber platform, library yang Anda gunakan. Salah satu cara mempercepat belajar adalah membuat aplikasi dari nol hingga selesai (sampai dirilis ke pasar).
Jangan terlalu mengandalkan library, terutama yang memengaruhi seluruh struktur aplikasi Anda. Aplikasi Anda mungkin bertahan lebih lama dari library-nya.
Perjalanan Android saya dimulai pada awal 2014; sebelumnya saya bekerja sebagai developer Java junior untuk sistem inventaris bangunan perusahaan kecil. Namun, itu tidak menarik bagi saya, dan saya terus mencari sesuatu yang hebat untuk dilakukan dengan pengetahuan Java saya. Saya membeli ponsel pertama saya, Nokia, dan melihat aplikasi di ponsel dan bertanya-tanya bagaimana mereka membuat aplikasi tersebut. Saya meneliti dan mengetahui bahwa aplikasi tersebut ditulis di Java, dan begitulah perjalanan saya dimulai.
Saya ingat ketika membangun aplikasi pertama saya, Simple Math, hanya berisi aktivitas karena tidak ada fragmen; sungguh peningkatan luar biasa yang kami dapatkan selama bertahun-tahun. Simple Math sudah didownload 500 kali dengan rating 4,5 dan ini benar-benar memotivasi saya untuk membangun lebih banyak aplikasi. Saya kemudian memenangkan Grow With Google Scholarship (2018), yang meningkatkan karier saya dengan pesat. Selama program beasiswa satu tahun ini, saya meluncurkan aplikasi kedua, Budgeting Buddy, di Google Play Store dan mendapatkan rating 4,5 dengan lebih dari lima ribu kali didownload. Saat ini saya bekerja untuk Streem sebagai Android Engineer, dan saya sangat menyukai sejauh mana Android telah berkembang dan bagaimana teknologi serta pemeliharaannya telah meningkat selama bertahun-tahun. Terutama Emulator.
Apa satu pintasan, tips, atau retasan pengembangan Android yang menurut Anda paling penting.
Pintasan yang menurut saya paling penting adalah [Options + Command + L] dan [Options + Command + O]; ini sangat membantu saya selama proses permintaan pull. Retasan luar biasa yang sangat saya sukai adalah opsi histori lokal git, WOW sungguh sebuah penyelamat. Terkadang Anda mungkin lupa apa yang telah Anda ubah, tetapi retasan ini selalu menyelamatkan saya.
Sebenarnya, ketika saya total bertransisi ke seluler, saya merasa kurva pembelajaran adalah sesuatu yang harus saya prioritaskan dalam hidup, ini sangat membantu. Selalu menjadi yang terdepan dengan selalu mempelajari apa yang baru, apa yang direkomendasikan, dan mengapa itu diperlukan. Sebagai contoh, kehadiran Room adalah kemajuan luar biasa, sekarang dagger Hilt, dan banyak lagi. Jadi, jika saya bisa membalikkan keadaan dan menasihati developer baru, bersiaplah untuk belajar dan Anda akan menikmati Pengembangan Android.
Komunitas Developer Android bangga dengan inklusivitasnya dan menyambut developer dari semua latar belakang dan usia. Jika Anda merasa terinspirasi dan ingin mempelajari lebih lanjut tentang cara menjadi bagian dari komunitas kami, berikut beberapa referensi untuk membantu Anda memulai.
Mulai dengan developer.android.com
Ikuti kami di Twitter
Berlangganan saluran YouTube kami
Program Google Developer Groups memberi kesempatan kepada developer untuk bertemu dengan developer lokal dengan minat yang sama dalam teknologi. Acara pertemuan GDG mencakup pembicaraan tentang berbagai topik teknis, di sini Anda bisa mempelajari keterampilan baru melalui lokakarya praktis.
Bergabunglah dengan perkumpulan terdekat di sini.
Didirikan pada tahun 2014, Women Techmakers Google bertujuan membantu semua wanita untuk berkembang dalam teknologi melalui komunitas, visibilitas, dan sumber daya. Dengan basis anggota lebih dari 100.000 developer wanita, kami bekerja dengan komunitas di seluruh dunia untuk membangun dunia, di sini semua wanita bisa mengembangkan teknologi.
Jadilah anggota di sini.
Program Google Developers Experts adalah jaringan global pakar teknologi yang sangat berpengalaman, influencer, dan para tokoh pemikiran yang secara aktif mendukung developer, perusahaan, dan komunitas teknologi dengan berbicara di berbagai acara, memublikasikan konten, dan membangun aplikasi inovatif. Para ahli secara aktif berkontribusi dan mendukung ekosistem developer dan startup di seluruh dunia, sehingga membantu mereka membangun dan meluncurkan aplikasi yang sangat inovatif.
Pelajari lebih lanjut tentang program ini di sini.
Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Kita baru saja menyelesaikan seri video dan artikel MAD Skills - kali ini di Kotlin dan Jetpack. Kita telah membahas berbagai cara untuk membuat kode Android lebih ekspresif dan ringkas, aman, serta mudah untuk menjalankan kode asinkron dengan Kotlin.
Lihat episode di bawah ini untuk meningkatkan pengetahuan Kotlin dan Jetpack Anda! Setiap episode membahas set API tertentu, yang membicarakan cara menggunakan API dan menunjukkan cara kerja API di dalamnya. Semua episode memiliki postingan blog penyerta dan umumnya menautkan contoh atau codelab agar lebih mudah diikuti dan untuk mendalami konten lebih jauh. Kami juga mengadakan tanya jawab langsung dan menghadirkan engineer Jetpack dan Kotlin.
Dalam episode ini kami mengamati cara coding Android dan Jetpack yang mudah, menyenangkan, dan Kotlin-idiomatis dengan ekstensi Jetpack KTX. Saat ini, lebih dari 20 library memiliki versi KTX. Episode ini membahas beberapa library terpenting: core-ktx yang menyediakan fungsionalitas Kotlin idiomatis untuk API yang berasal dari platform Android, ditambah beberapa library Jetpack KTX sehingga kita memiliki pengalaman pengguna yang lebih baik saat bekerja dengan API seperti LiveData dan ViewModel.
Lihat video atau artikelnya:
Episode 2, membahas cara menyederhanakan API menggunakan coroutine dan Flow serta cara membuat adaptor Anda sendiri menggunakan API suspendCancellableCoroutine dan callbackFlow. Untuk memahami topik ini, lihat codelab Membangun library ekstensi Kotlin.
Tonton video atau baca artikelnya:
Episode ini membuka pintu ke Room, mengintip dan melihat cara membuat tabel dan database Room di Kotlin serta cara mengimplementasikan operasi penangguhan satu-kali seperti insert, dan kueri yang dapat diamati menggunakan Flow. Saat menggunakan coroutine dan Flow, Room memindahkan semua operasi database ke thread latar belakang untuk Anda. Lihat video atau postingan blog untuk mengetahui cara mengimplementasikan dan menguji kueri Room. Untuk pekerjaan praktis lainnya - lihat codelab Room dengan tampilan.
Episode 4 mempermudah pekerjaan Anda dengan WorkManager, untuk menjadwalkan tugas-tugas asinkron untuk eksekusi langsung atau ditangguhkan yang diharapkan berjalan meskipun aplikasi ditutup atau perangkat dimulai ulang. Dalam episode ini kami membahas dasar-dasar WorkManager dan lebih mendalami API Kotlin, seperti CoroutineWorker.
Temukan videonya di sini dan artikelnya di sini, tetapi tidak ada yang sebanding dengan pengalaman praktik, jadi bukalah codelab WorkManager.
Episode 5 ditulis oleh Magda Miu - Google Developer Expert di Android yang membagikan pengalamannya memanfaatkan API Kotlin dasar dengan CameraX. Lihat di sini:
Di episode terakhir kami meluncurkan tanya jawab langsung, yang dipandu oleh Chet Haase, dengan tamu Yigit Boyar - Architecture Components tech lead, David Winer - Kotlin product manager, dan developer relations engineer Manuel Vivo serta saya sendiri. Kami menjawab pertanyaan Anda di YouTube, Twitter, dan media lainnya.
📝 Rilis terbaru WorkManager 2.5.0 membuat penggunaan semakin mudah dalam lingkungan multiproses dan memberikan beberapa peningkatan stabilitas.
Jadi jika Anda memiliki aplikasi yang mengelola banyak proses, dan Anda membutuhkan cara yang bisa diandalkan untuk mengelola pekerjaan latar belakang (tidak ada lagi error inisialisasi ️️⚠), maka rilis ini cocok untuk Anda.
Ada beberapa perubahan yang perlu dilakukan pada kode Anda, jadi baca terus untuk mengetahui lebih lanjut.
Di akhir artikel, saya juga akan mencantumkan beberapa perubahan perilaku dan tambahan terbaru dalam versi library WorkManager ini.
Artefak multiproses baru memperkenalkan peningkatan kinerja dengan menyatukan penjadwalan tugas ke satu proses. Untuk memulai, tambahkan ke aplikasi Anda.
Implementation "androidx.work:work-multiprocess:2.5.0"
Sekarang Anda bisa memilih proses yang ditunjuk yang digunakan WorkManager untuk mengantrekan WorkRequests, dan menjalankan penjadwal dalam-prosesnya.
Konfigurasi yang menggunakan Configuration.Provider bisa terlihat seperti ini.
class MyApplication() : Application(), Configuration.Provider { override fun getWorkManagerConfiguration() = Configuration.Builder() .setProcessName("com.example:remote") .build()}
Catatan: Parameter pada setProcessName mengharuskan Anda untuk memberikan nama proses yang memenuhi syarat, yang terdiri dari nama paket aplikasi, diikuti oleh titik dua, dan kemudian nama proses host, mis. com.example:remote.
Saat menggunakan pekerjaan-multiproses, Anda juga perlu menggunakan RemoteWorkManager sebagai ganti WorkManager untuk mengelola permintaan pekerjaan. RemoteWorkManager akan selalu menjangkau proses yang ditunjuk untuk mengantrekan pekerjaan Anda. Ini memastikan bahwa Anda tidak melakukan inisialisasi WorkManager baru secara tidak sengaja dalam proses pemanggil. Penjadwal dalam-proses juga berjalan dalam proses yang ditunjuk yang sama.
Dengan WorkManager yang dikonfigurasi seperti ini dan menggunakan RemoteWorkManager untuk menjadwalkan tugas, pekerjaan Anda bisa dikelola dengan lebih cepat dan andal di aplikasi multiproses. Ini karena konflik SQLite bisa sangat berkurang (karena kita tidak lagi mengandalkan kunci berbasis file) dan rekonsiliasi tugas di seluruh proses tidak akan diperlukan lagi karena aplikasi Anda hanya akan memiliki satu instance WorkManager yang berjalan dalam proses yang Anda tentukan.
Sebelumnya, ketika ActivityManager tidak dapat membuat instance JobService untuk memulai tugas, tugas itu akan dihentikan secara diam-diam karena bug mendasar di platform. WorkManager sekarang memastikan bahwa ada tugas penjadwal cadangan untuk setiap WorkRequest ketika sebuah instance Application dibuat dengan merekonsiliasi objek WorkRequest dengan tugas.
Kami melihat bahwa salah satu penyebab aplikasi tidak bekerja adalah karena perangkat kehabisan penyimpanan. Ini terjadi terutama pada perangkat yang memiliki sedikit ruang penyimpanan. Namun, ketika aplikasi menjadwalkan banyak pekerjaan, WorkManager bertanggung jawab sebagian atas perangkat yang kehabisan ruang penyimpanan.
Secara default, tugas yang diselesaikan dicatat dalam database WorkManager internal selama 7 hari. Waktu ini dikurangi menjadi 1 hari, yang secara dramatis mengurangi ukuran database.
Meskipun kami mempersingkat durasi buffering, Anda bisa mengontrol seberapa lama tugas diingat dengan menggunakan keepResultsForAtLeast() API.
Jika Anda menggunakan ListenableFuture dengan WorkManager, maka pengujian menjadi lebih mudah — ekstensi Kotlin TestListenableWorkerBuilder sekarang menerima kelas apa pun yang memperluas ListenableWorker, sehingga Anda bisa lebih fleksibel selama pengujian.
Selain fitur baru, rilis ini juga berisi beberapa perbaikan bug yang meningkatkan stabilitas, keandalan, dan kinerja WorkManager. Anda bisa membaca semua perubahan serta perbaikan bug di catatan rilis.
WorkManager, serta beberapa library Jetpack lainnya, bisa menerima kontribusi melalui GitHub.
Alan Viverette menulis postingan blog komprehensif tentang keseluruhan proses.
Sebagian besar bug yang telah diperbaiki dalam rilis 2.5.0 didapat melalui input dari issue tracker publik.
Cara terbaik untuk membuat masalah yang bisa kita perbaiki adalah dengan membuat masalah yang dapat kita reproduksi. Untuk membantu kami mereproduksi masalah, kami menyarankan Anda menggunakan contoh WorkManager atau memberikan kode contoh Anda sendiri dengan petunjuk dalam deskripsi masalah.
Sekarang adalah waktu yang tepat untuk mulai bekerja dan mengelola pembaruan versi library di aplikasi Anda.
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.
*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.