Plugin Gradle Android Kotlin Extensions (jangan disamakan dengan Android KTX) dirilis pada tahun 2017 dan menghadirkan dua kemudahan baru untuk pengembangan Android di Kotlin:
Sejak saat itu, kami telah merilis View Binding for Android, library dengan dukungan resmi yang memiliki integrasi mendalam dengan toolchain build Android dan menyediakan fungsi yang serupa dengan synthetic Kotlin. Meskipun kami terus merekomendasikan Parcelize, sejumlah kelemahan muncul saat menggunakan synthetic Kotlin:
JetBrains awalnya mengembangkan plugin Android Kotlin Extensions, dan kami semua telah membahas kelebihan dan kekurangan dari terus mempertahankan synthetic: kami berusaha keras untuk menjamin dukungan jangka panjang untuk API, tetapi kami juga ingin membimbing developer menuju praktik terbaik yang membuat basis kode yang baik, pada akhirnya, pengguna yang senang.
Tahun depan, tim kami akan bersama-sama menghentikan penggunaan synthetic untuk terus mendukung opsi yang kami rekomendasikan, View Binding. Inilah artinya:
Periode penghentian dimulai dengan Kotlin 1.4.20, yang dirilis hari ini. android-kotlin-extensions akan terus ada setidaknya selama satu tahun, tetapi akan dihapus pada rilis Kotlin mendatang selama atau setelah September 2021. Untuk jangka panjang, kami akan terus mempertahankan plugin kotlin-parcelize, dan Anda bisa terus melaporkan masalah Parcelize di issue tracker Android Studio.
Sejak mengumumkan dukungan Kotlin pada tahun 2017, kami mendapatkan banyak pertanyaan tentang Kotlin di Android: Anda ingin tahu apakah sudah waktunya mempelajari Kotlin, menghadirkannya ke aplikasi Anda, kursus atau tutorial apa yang terbaik untuk mempelajarinya, apakah Google secara internal menggunakan Kotlin dan rencana kami untuk bahasa pemrograman Java. Dalam postingan kali ini, saya akan menjawab beberapa pertanyaan berikut.
Pertanyaan serupa yang paling sering kami terima adalah:
Jawaban singkat:
Ya! Mulailah pelajari dan gunakan Kotlin!
Jawaban panjang:
Pada tahun 2017, kami mengumumkan dukungan Kotlin di Google I/O. Saat itulah kami mulai membuat langkah pertama untuk memastikan bahwa API, dokumen, dan contoh kami ramah-Kotlin. Pada tahun 2019, Android mulai mengutamakan Kotlin, jadi kami lebih mengandalkan fitur Kotlin. Sebagai contoh, Coroutine menjadi solusi yang kami rekomendasikan untuk menjalankan pekerjaan asinkron. Inilah hal lain yang telah kami lakukan:
Kami mulai dengan menambahkan dukungan kelas satu untuk Coroutine Kotlin ke beberapa Android Jetpack API kami, seperti Room, LiveData, ViewModel, dan WorkManager, hal ini mengubah cara kami melakukan operasi asinkron di Android. Firebase Android SDK dan banyak library Jetpack memiliki library ekstensi Kotlin (KTX) agar penggunaannya lebih lancar dengan Kotlin.
Sekarang, banyak library kami yang mengutamakan Kotlin, seperti Paging 3.0 dan DataStore. Jetpack Compose, toolkit UI deklaratif terpisah kami yang baru, ditulis dari awal dengan Kotlin.
Produktivitas pengembangan berawal dari peralatan yang tepat. Karena itu, kami telah melakukan banyak peningkatan untuk Kotlin pada toolchain kompilasi, termasuk penyempurnaan compiler JVM Kotlin, pengoptimalan R8 khusus Kotlin, bahkan mengembangkan alat baru seperti Kotlin Symbol Processing. Kami telah menambahkan template Android Kotlin Live bawaan, sehingga Anda bisa menggunakan cara pintas untuk menambahkan konstruksi Android umum ke aplikasi Kotlin. Pada saat yang sama, pemeriksaan Lint khusus Kotlin membantu Anda membuat kode Kotlin lebih idiomatis. Ini sangat berguna saat Anda beralih dari bahasa pemrograman Java ke Kotlin.
Kami juga melipatgandakan Kotlin di Google. Lebih dari 60 aplikasi kami (seperti Google Home, Drive, Maps, dan lainnya) telah menambahkan Kotlin ke codebase aplikasi. Codebase internal besar kami menghitung lebih dari dua juta baris kode Kotlin.
Kami sering mendapatkan pertanyaan ini, tetapi jawabannya tergantung Anda. Jika Anda sudah senang dengan codebase dan tech stack saat ini, pintar mencari solusi untuk mengelola tugas asinkron, dan memiliki cara yang efisien untuk menangkap kesalahan, migrasi mungkin bukan solusi untuk Anda
Jika Anda menyukai apa yang telah Anda lihat dengan Kotlin baik dengan mencobanya maupun mempelajari bahasanya melalui beberapa kursus yang disebutkan di bawah, dan Anda juga ingin memanfaatkan Jetpack API terbaru, maka Anda harus mempertimbangkan untuk menambahkan Kotlin ke aplikasi. Salah satu keuntungan Kotlin adalah interop yang sangat bagus dengan bahasa pemrograman Java. Anda bisa mengambil langkah kecil secara bertahap dalam mengadopsinya — mungkin terlebih dahulu mencobanya di pengujian, lalu mencoba beberapa fitur baru, kemudian Anda dapat mencoba konversi beberapa kode lama saat menyentuhnya.
Untuk membuat langkah pertama Anda dalam migrasi ke Kotlin idiomatis, lihat Mengonversi ke codelab Kotlin.
Kami menambahkan dukungan Kotlin selain Java karena keduanya dikompilasi ke bytecode yang sama dan bisa berdampingan satu sama lain. Kami menyukai Kotlin karena ekspresif dan lebih aman saat menulis kode. Kami juga terus mempertahankan dan mengembangkan dukungan Java. Misalnya, di Android 11, kami menambahkan dukungan untuk sejumlah API dari rilis OpenJDK terbaru hingga versi 13 dan Android Studio bahkan mengizinkan Anda menggunakan beberapa API ini di semua perangkat Android, apa pun versi OS-nya. Baca selengkapnya tentang dukungan untuk API bahasa terbaru di sini.
Mengadopsi bahasa baru bukanlah tugas yang mudah, tetapi kami berusaha membuatnya semudah mungkin:
Sejak secara resmi menambahkan dukungan untuk Kotlin 3 tahun lalu, kami semakin meningkatkan dukungan untuk bahasa dan ekosistem yang luar biasa ini. Bersama JetBrains, kami telah membangun fondasi bagi Kotlin untuk memastikan bahasanya berkembang dengan baik, misalnya melalui proses yang cermat untuk memeriksa perubahan yang dapat menyebabkan gangguan. Kontribusi kami lebih dari itu: Google memiliki tim engineer yang berkontribusi untuk compiler Kotlin sebagai pekerjaan tetap mereka, Jetpack API yang kami bangun tidak hanya mendukung Kotlin tetapi juga mengutamakan Kotlin, dan kami berkomitmen untuk memberikan pengalaman Kotlin yang mulus di Android.
Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Selamat datang di Now in Android, panduan berkelanjutan Anda tentang apa yang baru dan penting dalam dunia development Android.
Seri MAD Skills terus berlanjut, dengan konten teknis tentang development Android modern. Wojtek Kaliciński dan Ben Weiss telah memposting beberapa episode pada seri kedua di App Bundle. Sejauh ini, kami telah melihat konten Play App Signing, Building your First App Bundle, dan Play Feature Delivery. Lihat video dan artikel di bawah ini untuk mengetahui selengkapnya.
Dalam seri tentang Android App Bundle, kita sering membicarakan tentang penandatanganan aplikasi, karena Play menghasilkan APK untuk didownload ke perangkat pengguna, dan APK tersebut harus ditandatangani agar bisa diinstal. Video ini akan memperlihatkan kepada Anda cara mengaktifkan penandatanganan aplikasi di Konsol Play, termasuk opsi untuk meminta Google membuat kunci atau meng-upload kunci Anda sendiri.
Pastikan membaca artikel terkait dari Wojtek mengenai pertanyaan umum tentang Play App Signing:
Jawaban atas pertanyaan umum tentang App Signing dari Google Play
Video dari Ben akan membimbing Anda melalui langkah-langkah pembuatan App Bundle, Anda bisa melakukannya di Android Studio atau baris perintah, dilanjutkan dengan meng-upload-nya ke Konsol Play. Ia juga menunjukkan cara menggunakan alat di Konsol Play untuk menggali informasi tentang paket yang di-upload.
Episode ini menunjukkan kepada Anda cara menggunakan Android Studio untuk memodularisasi aplikasi, dan cara memilih modul yang akan didownload pada waktu penginstalan (dengan kondisi opsional yang menentukan apakah akan diinstal atau tidak) atau sesuai permintaan. Ben juga menjelaskan secara detail cara menggunakan API untuk meminta penginstalan modul sesuai permintaan.
Atau dalam bentuk artikel:
Mengonfigurasi aplikasi Anda untuk Play Feature Delivery
Dalam episode terakhir ini, Wojtek menjelaskan cara menggunakan alat yang tersedia untuk menguji bundel Anda dan APK yang dihasilkan, termasuk bundletool untuk pengujian lokal serta Konsol Play untuk menguji upload.
Ada beberapa artikel dan dokumen yang ditautkan dari deskripsi video, pastikan memeriksanya untuk mendapatkan informasi lebih lanjut tentang topik tersebut.
Nantikan konten App Bundle final minggu depan, kami akan mengadakan sesi Tanya Jawab langsung Kamis mendatang (link YouTube live akan muncul di playlist saat sesi dimulai, dan kami akan mengirimkan pesan sebelum acara berlangsung bila Anda punya pertanyaan).
Untuk konten yang berlangsung, pastikan memeriksa playlist MAD Skills di YouTube, artikel di Medium, atau halaman pendahuluan praktis ini yang akan menunjukkan semuanya. Seri berikutnya akan dimulai minggu depan: nantikan informasi selanjutnyanya!
Di tengah banyaknya rilis alfa, beta, dan RC inkremental dari library AndroidX, ada beberapa versi stabil penting yang baru saja diluncurkan dan harus Anda perhatikan.
Kita tidak selalu membicarakan Kotlin, tetapi ketika kita melakukannya, kita akan banyak membicarakannya. Ada beberapa artikel dan video yang diposting tentang Kotlin baru-baru ini:
Florina Muntenescu menambahkan episode lain dalam seri Kotlin Vocabulary yang sedang berjalan, kali ini tentang class data Kotlin. Class data memungkinkan Anda membuat struktur dengan mudah untuk menyimpan data dengan kode boilerplate lebih sedikit, dan mengandalkan Kotlin untuk secara otomatis menghasilkan fungsi equals() dan hashCode() yang sesuai. Anda juga langsung mendapatkan destrukturisasi untuk properti class, bersama dengan copy(). Seperti biasa untuk episode Kotlin Vocabulary, Florina mendalami bytecode yang telah didekompilasi untuk class data guna menjelaskan cara kerjanya.
Class data — cara berkelas untuk menyimpan data
Berbicara tentang Kotlin Vocabulary, Murat Yener memposting lanjutan dari artikel sebelumnya tentang fitur delegate Kotlin. Kali ini, ia akan membahas tentang delegate yang disediakan oleh Kotlin Standard Library: lazy, observable, vetoable, dan notNull.
Delegate Bawaan
Jawaban singkatnya adalah… Ya!
Namun untuk penjelasan lebih panjang, Florina memposting artikel ini untuk menjawab beberapa pertanyaan yang sering diajukan developer tentang berinvestasi dalam pendidikan dan development Kotlin, serta link ke sumber daya pembelajaran penting.
Haruskah saya mempelajari Kotlin untuk Android dan Tanya Jawab lainnya
Dalam artikel ini, Florina membahas beberapa alasan yang membuat aplikasi Kotlin tidak rentan error dibandingkan aplikasi yang tidak ditulis dengan Kotlin. Ia menunjukkan beberapa aplikasi dan kasus penggunaan tertentu yang mendukung pernyataan ini, tetapi juga membahas beberapa alasan mengapa bahasa ini memungkinkan kode menjadi lebih kuat, termasuk nullability, hashCode() != equals(), dan lainnya. Baca postingannya untuk mengetahui semua detailnya.
Error berkurang dan stabilitas bertambah dengan Kotlin
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:
Romain Guy, Tor Norbye, dan saya berbicara dengan Colin White dari Instacart tentang library pemuatan gambar sumber terbuka, Coil. Kami mengobrol tentang pemuatan gambar, kinerja, sumber terbuka, dan penggunaan Kotlin serta coroutine untuk membuat library yang mengutamakan Kotlin ini.
Episode 151: Pemuatan Gambar dengan Coil
Cukup sampai di sini. Jadi, silakan pelajari App Bundle! Download rilis AndroidX terbaru! Baca artikel terbaru tentang Kotlin! Dengarkan episode podcast ADB terbaru! Dan segera kembali ke sini untuk mendapatkan update berikutnya dari dunia developer Android.
Oleh Andrew Ahn, Product Manager, Google Play App Safety
Di Google Play, kami ingin mengembangkan ekosistem aplikasi yang aman, menarik, berguna, dan menghibur yang digunakan dan disukai oleh miliaran pengguna Android di seluruh dunia. Itulah sebabnya kami secara rutin mengupdate dan merevisi Kebijakan Developer dan Perjanjian Distribusi Developer Google Play, memerinci batasan konten dan fungsi aplikasi yang diizinkan pada platform, serta memberikan panduan terbaru tentang cara developer mempromosikan dan memonetisasi aplikasi.
Pada upaya terbaru dalam menganalisis aplikasi mengenai kepatuhan kebijakan di Google Play, kami mengidentifikasi beberapa kesalahan dan pelanggaran yang sering dilakukan developer, dan kami membagikannya dengan komunitas developer dengan tips dan panduan tentang cara menghindarinya, mengurangi risiko aplikasi dan akun developer ditangguhkan karena melanggar kebijakan kami.
Salah satu kesalahan yang paling sering kami lihat adalah aplikasi yang memiliki tombol dan menu yang terhubung ke Play Store -- baik ke aplikasi oleh developer yang sama, atau aplikasi lain yang mungkin berafiliasi dengan developer tersebut, tetapi tidak jelas apakah ini iklan atau link promosi. Tanpa kejelasan ini, aplikasi mungkin akan dipaksa memiliki iklan yang memperdaya / mengecoh. Salah satu cara menghindari kesalahan ini adalah dengan secara eksplisit memanggilnya dengan memberi label pada tombol dan link dengan ‘Aplikasi Lainnya’, ‘Game Lainnya’, ‘Jelajahi’, ‘Lihat aplikasi kami yang lainnya’, dll.
Contoh konten aplikasi yang terhubung ke cantuman aplikasi di Play
Kesalahan lain yang sering kami temui adalah developer yang ‘memasukkan’ kata kunci dalam keterangan aplikasi dengan harapan menghasilkan visibilitas dan peringkat yang lebih baik terhadap kata kunci dan frasa tertentu. Blok atau daftar teks yang berisi kata kunci atau referensi berulang atau tidak terkait melanggar kebijakan Cantuman Play Store dan Promosi kami. Menulis keterangan aplikasi dengan jelas yang ditujukan dan dioptimalkan agar mudah dibaca dan dipahami pengguna adalah salah satu cara terbaik untuk menghindari pelanggaran ini.
Tonton video ini untuk mempelajari cara menghindari cantuman toko berisi spam dan upaya meningkatkan visibilitas aplikasi secara artifisial.
Ada aplikasi yang sudah lama dipublikasikan oleh developer, tetapi tidak lagi dikelola. Aplikasi yang terbengkalai dan tidak dikelola sering kali menimbulkan masalah pengalaman pengguna -- misalnya, fungsi aplikasi rusak. Aplikasi semacam itu tidak hanya berisiko mendapatkan rating bintang rendah dan ulasan negatif dari pengguna, tetapi juga akan ditandai karena melanggar kebijakan fungsi minimum. Untuk mengurangi dampak negatif terhadap reputasi developer dan pemaksaan aplikasi, sebaiknya batalkan publikasi aplikasi tersebut dari Play Store. Perhatikan bahwa tindakan pembatalan publikasi yang diupdate tidak akan memengaruhi pengguna lama yang telah menginstal aplikasi, dan developer selalu bisa memilih untuk memublikasikannya kembali setelah memperbaiki pengalaman yang rusak.
Contoh aplikasi terbengkalai yang memberikan pengalaman aplikasi rusak
Ikuti kursus ‘Minimum and Broken Functionality Spam’ di Akademi Play
Terakhir, kami memperhatikan banyak sekali pengajuan aplikasi yang hanya merupakan webview dari situs yang ada. Sebagian besar aplikasi ini dikirimkan dengan tujuan utama untuk mengarahkan traffic, bukan memberikan pengalaman aplikasi yang menarik kepada pengguna Android. Aplikasi semacam ini dianggap sebagai spam webview, dan dihapus dari Play. Sebagai gantinya, pikirkan apa yang bisa dilakukan pengguna atau yang bisa dilakukannya lebih baik dengan menggunakan aplikasi daripada di web dan terapkan fitur serta fungsi relevan yang memperkaya pengalaman pengguna.
Contoh webview tanpa fungsi aplikasi
Ikuti kursus ‘Webview Spam’ di Akademi Play
Meskipun hal di atas adalah salah satu kesalahan yang paling sering terjadi, pastikan selalu mengikuti kebijakan terbaru dengan mengunjungi Pusat Kebijakan Developer Play. Lihat pelatihan Kebijakan Akademi Google Play, termasuk kursus Spam baru kami, dan tonton video Play PolicyBytes kami untuk mempelajari lebih lanjut tentang update kebijakan terbaru.
Diposting oleh Scott Swarthout, Product Manager
Hari ini, kami gembira bisa merilis versi stabil Android Studio 4.1, dengan rangkaian fitur yang ditujukan untuk menangani kasus penggunaan pengeditan, proses debug, dan pengoptimalan. Tema utama rilis ini adalah menjadikan Anda lebih produktif saat menggunakan library Android Jetpack, suite library Android untuk membantu developer mengikuti praktik terbaik dan menulis kode dengan lebih cepat. Berdasarkan masukan Anda, kami membuat sejumlah peningkatan pada cara pengeditan kode dengan integrasi IDE untuk library Android populer.
Beberapa sorotan Android Studio 4.1 termasuk Database Inspector baru untuk membuat kueri database aplikasi Anda, dukungan perencanaan project yang menggunakan Dagger atau Hilt untuk memasukkan dependensi, dan dukungan yang lebih baik untuk machine learning di perangkat dengan dukungan bagi model TensorFlow Lite di project Android. Kami juga telah memperbarui Apply Changes untuk mempercepat penerapan. Berdasarkan masukan Anda, kami telah melakukan beberapa perubahan untuk membantu developer game dengan alat pemrofilan mandiri dan profiler memori native yang baru.
Kualitas produk terus menjadi fokus utama tim, dan kami terus bekerja keras untuk melacak bug dan masalah performa. Kami mendengar dari banyak developer bahwa mereka menyukai fokus pada performa dan keandalan yang lebih baik, jadi dengan gembira kami laporkan bahwa selama siklus rilis ini kami telah memperbaiki 2.370 bug dan menutup 275 masalah publik. Kami tetap commit untuk menjaga kualitas tinggi karena kami tahu bahwa ini adalah kunci produktivitas developer.
Terima kasih kepada Anda semua yang telah memberikan masukan awal dalam rilis pratinjau. Masukan Anda membantu kami melakukan iterasi dan meningkatkan fitur di Android Studio 4.1. Jika Anda siap untuk rilis stabil berikutnya, dan ingin menggunakan rangkaian fitur produktivitas baru, Android Studio 4.1 siap didownload untuk Anda memulai.
Berikut adalah daftar lengkap fitur baru di Android Studio 4.1, yang disusun menurut alur developer kunci.
Template Android Studio dalam dialog create New Project sekarang menggunakan Komponen Desain Material (MDC) dan secara default menyesuaikan dengan panduan terbaru tema dan gaya. Perubahan ini akan mempermudah penggunaan pola gaya material yang direkomendasikan dan mendukung fitur UI modern seperti tema gelap.
Update Komponen Desain Material di Template Project
Update meliputi:
com.google.android.material:material
Theme.MaterialComponents.*
colors.xml
purple_500
colorPrimary
themes.xml
styles.xml
Theme.<ApplicationName>
DayNight
?attr/colorPrimary
Kami ingin memudahkan pemeriksaan, kueri, dan modifikasi database aplikasi Anda menggunakan Database Inspector yang baru. Untuk memulai, terapkan aplikasi Anda ke perangkat yang menjalankan API level 26 atau yang lebih tinggi dan pilih View > Tool Windows > Database Inspector dari panel menu. Walaupun aplikasi Anda menggunakan library Jetpack Room atau versi platform Android SQLite secara langsung, Anda sekarang bisa dengan mudah memeriksa database dan tabel di aplikasi yang sedang berjalan atau menjalankan kueri khusus.
Karena Android Studio mempertahankan koneksi langsung saat Anda memeriksa aplikasi, Anda juga bisa mengubah nilai menggunakan Database Inspector dan melihat perubahan tersebut di aplikasi yang sedang berjalan. Jika Anda menggunakan library persisten Room, Android Studio juga menempatkan tombol run di samping setiap kueri dalam editor kode untuk membantu menjalankan kueri yang Anda tetapkan dalam anotasi @Query dengan cepat. Pelajari lebih lanjut
Periksa, kueri, dan modifikasi database aplikasi Anda dengan Database Inspector
Sekarang Anda bisa menjalankan Android Emulator secara langsung di Android Studio. Gunakan fitur ini untuk menghemat ruang layar, beralih antara emulator dan jendela editor dengan cepat menggunakan tombol pintas, dan mengatur alur kerja IDE dan emulator Anda dalam satu jendela aplikasi. Anda bisa mengelola snapshot dan tindakan emulator umum seperti memutar dan mengambil screenshot dari dalam Studio, tetapi akses ke rangkaian opsi lengkap tetap membutuhkan emulator stabil. Anda bisa memilih untuk menggunakan fitur ini dengan membuka File → Settings → Tools → Emulator → Launch in Tool Window.
Jalankan Android Emulator di dalam Android Studio
Dagger adalah library populer untuk memasukkan dependensi di Android. Android Studio memudahkan navigasi di antara kode yang terkait Dagger dengan menyediakan gutter tindakan baru dan memperluas dukungan di jendela Find Usages. Sebagai contoh, mengklik gutter tindakan di samping metode yang menggunakan tipe tertentu akan mengarahkan Anda ke penyedia tipe tersebut. Sebaliknya, mengklik gutter tindakan akan mengarahkan Anda ke tempat yang menggunakan tipe tersebut sebagai dependensi. Android Studio juga mendukung tindakan navigasi untuk dependensi yang ditetapkan dengan library Hilt Jetpack. Pelajari lebih lanjut.
Buka kode terkait Dagger dengan tindakan gutter
Developer Android menggunakan machine learning untuk menciptakan pengalaman yang inovatif dan bermanfaat. TensorFlow Lite adalah library populer untuk menulis model machine learning seluler, dan kami ingin memudahkan impor model ini ke dalam aplikasi Android. Serupa dengan binding tampilan, Android Studio menghasilkan kelas yang mudah digunakan sehingga Anda bisa menjalankan model dengan kode yang lebih sedikit dan keamanan tipe yang lebih baik. Penerapan ML Model Binding saat ini mendukung klasifikasi gambar dan model transfer gaya, asalkan mereka dilengkapi metadata.
Untuk melihat detail model yang diimpor dan mendapatkan petunjuk tentang cara menggunakannya di aplikasi, klik dua kali file model .tflite di project Anda untuk membuka halaman model viewer. Pelajari lebih lanjut.
.tflite
Lihat metadata model TensorFlow Lite di Android Studio 4.1
Android Studio
Selain baru-baru ini menambahkan dukungan pengujian seluler 5G, kami telah menambahkan dukungan untuk perangkat foldable di Android emulator. Dengan Android emulator 30.0.26 ke atas, Anda bisa mengonfigurasi perangkat foldable dengan berbagai desain dan konfigurasi lipatan. Bila perangkat foldable telah dikonfigurasi, emulator akan memublikasikan update sensor sudut engsel dan perubahan postur, sehingga Anda bisa menguji cara aplikasi merespons faktor bentuk ini. Lihat entri blog Develop untuk Android 11 dengan Android Emulator untuk membaca informasi selengkapnya.
Build yang lebih cepat membantu developer membuat perubahan pada aplikasi mereka dengan lebih mudah dan cepat. Agar Anda semakin produktif saat melakukan iterasi pada aplikasi, kami telah melakukan beberapa penyempurnaan pada Apply Changes untuk perangkat yang menjalankan Android 11 atau yang lebih tinggi.
Kami telah berinvestasi besar-besaran dalam mengoptimalkan kecepatan iterasi Anda dengan mengembangkan metode untuk menerapkan dan mempertahankan perubahan pada perangkat tanpa menginstal aplikasi. Setelah penerapan awal, penerapan berikutnya ke perangkat Android 11 yang menggunakan Apply Code Changes atau Apply Changes and Restart Activity sekarang jauh lebih cepat. Kami juga menambahkan dukungan untuk perubahan kode tambahan di Apply Changes. Sekarang jika menambahkan metode, Anda bisa menerapkan perubahan tersebut ke aplikasi yang sedang berjalan dengan mengklik Apply Code Changes atau Apply Changes and Restart Activity.
Plugin Android Gradle 4.0 menambahkan kemampuan untuk mengimpor paket Prefab dalam dependensi AAR. Kami juga ingin memperluas kemampuan fitur ini untuk mendukung berbagi library native. AGP versi 4.1 memungkinkan ekspor library dari build native eksternal Anda dalam AAR untuk project Android Library. Untuk mengekspor library native Anda, tambahkan kode berikut ke blok android dari file build.gradle project library:
build.gradle
buildFeatures { prefabPublishing true } prefab { mylibrary { headers "src/main/cpp/mylibrary/include" } myotherlibrary { headers "src/main/cpp/myotherlibrary/include" } }
Saat error atau ANR terjadi pada kode native, sistem menghasilkan pelacakan tumpukan, yang merupakan snapshot urutan fungsi yang dipanggil dalam program Anda hingga saat program tersebut error. Snapshot ini bisa membantu Anda mengidentifikasi dan memperbaiki masalah apa pun di sumbernya, tetapi mereka harus terlebih dahulu disimbolkan untuk menerjemahkan alamat mesin ke nama fungsi yang dapat dibaca manusia.
Jika aplikasi atau game Anda dikembangkan menggunakan kode native, seperti C++, Anda sekarang bisa mengupload file simbol debug ke Konsol Play untuk setiap versi aplikasi Anda. Konsol Play menggunakan file simbol debug ini untuk menyimbolkan pelacakan tumpukan aplikasi Anda, sehingga mempermudah analisis error dan ANR. Untuk menyertakan simbol debug dalam paket aplikasi, tambahkan baris berikut ke file build.gradle project Anda:
android.buildTypes.release.ndk.debugSymbolLevel = 'SYMBOL_TABLE'
Di Android Studio 4.1 kami telah merombak System Trace, alat pengoptimalan yang memberi Anda gambaran real-time tentang cara aplikasi menggunakan resource sistem. Kami mempermudah pemilihan trace dengan mode box selection, menambahkan tab analisis baru, dan menambahkan lebih banyak data rendering bingkai untuk membantu Anda menyelidiki masalah rendering di UI aplikasi. Pelajari lebih lanjut.
Pemilihan berbentuk kotak: Di bagian Threads, Anda sekarang bisa menarik mouse untuk melakukan pemilihan berbentuk kotak area persegi panjang, yang dapat Anda perbesar dengan mengklik tombol Zoom to Selection di kanan atas (atau menggunakan pintasan keyboard M). Saat Anda menarik lalu melepaskan thread serupa di samping thread lainnya, Anda bisa memilih beberapa thread untuk memeriksa semuanya sekaligus.
Gunakan pemilihan kotak agar lebih mudah memilih trace.
Tab Summary: Tab Summary baru di tampilan panel Analysis:
Lihat statistik gabungan di tab Summary
Data tampilan: Di bagian Display, timeline baru untuk SurfaceFlinger dan VSYNC membantu Anda menyelidiki masalah rendering di UI aplikasi.
Sekarang Anda bisa mengakses Android Studio Profiler di jendela terpisah dari jendela utama Android Studio. Ini berguna saat mengoptimalkan game Android yang dibuat dengan alat lain seperti Unity atau Visual Studio.
Untuk menjalankan profiler mandiri, lakukan langkah berikut:
Windows/Linux: <studio-installation-folder>\bin
<studio-installation-folder>\bin
macOS: <studio-installation-folder>/Contents/bin
<studio-installation-folder>/Contents/bin
profiler.exe
profiler.sh
Profiler mandiri memungkinkan Anda menghubungkan ke Android emulator atau perangkat apa pun yang terhubung.
Optimalkan aplikasi Anda dengan Profiler Mandiri Android Studio
Melacak penggunaan memori native sangatlah penting bagi developer game dan developer lain yang menggunakan C++ untuk memahami cara mengoptimalkan konsumsi memori aplikasi mereka. Android Studio Memory Profiler sekarang menyertakan Native Memory Profiler untuk aplikasi yang diterapkan ke perangkat fisik yang menjalankan Android 10 atau lebih baru. Native Memory Profiler melacak alokasi/dealokasi objek dalam kode native untuk jangka waktu tertentu dan memberikan informasi tentang alokasi total dan ukuran heap sistem yang tersisa.
Untuk memulai perekaman, klik Record native allocations di bagian atas jendela Memory Profiler:
Lihat alokasi memori native dengan Native Memory Profiler
Untuk rekap, Android Studio 4.1 menyertakan penyempurnaan & fitur baru ini:
Design
Develop
Build & Test
Optimize
Materi ini tidak disponsori atau berafiliasi dengan Unity Technologies atau afiliasinya. “Unity” adalah merek dagang atau merek dagang terdaftar dari Unity Technologies atau afiliasinya di A.S. dan negara lainnya.