Catatan Rilis Android Studio 3.4 (April 2019)

Android Studio 3.4 adalah rilis utama dengan berbagai fitur dan peningkatan baru.



IntelliJ IDEA 2018.3.4


  • Android Studio core diperbarui dengan perangkat tambahan dari IntelliJ IDEA dari rilis 2018.3.4

Plugin Android Gradle 3.4.0


  • tentang yang baru di plugin Android Gradle 3.4.0 lihat catatan rilis

Dialog Struktur Proyek Baru


  • dialog Struktur Proyek (PSD) yang baru memudahkan untuk memperbarui dependensi dan mengkonfigurasi berbagai aspek proyek Anda, seperti modul, opsi bangun, konfigurasi penandatanganan, dan variabel bangunan
  • Anda dapat membuka PSD dengan memilih "File> Struktur Proyek" di menu. Anda juga dapat membuka PSD melalui Ctrl + Shift + Alt + S di Windows dan Linux, atau Command +; (titik koma) di macOS. Berikut ini adalah uraian tentang inovasi dan pembaruan PSD.

Variabel


  • bagian ini memungkinkan Anda untuk membuat dan mengelola variabel build, misalnya, menentukan versi dependensi yang sesuai untuk keseluruhan proyek

    gambar


    • tinjauan umum cepat dan pengeditan variabel build yang sudah ada dalam skrip build gradle proyek Anda
    • menambahkan variabel build baru ke level proyek atau modul langsung dari dialog Struktur Proyek
    • CATATAN: jika file konfigurasi build yang ada menetapkan nilai melalui skrip Groovy yang kompleks, Anda mungkin tidak dapat mengedit nilai-nilai ini melalui dialog Struktur Proyek. Selain itu, Anda tidak dapat mengedit file bangunan yang ditulis di Kotlin menggunakan dialog Struktur Proyek


Modul


  • konfigurasikan properti yang berlaku untuk semua opsi bangunan yang ada di modul atau tambahkan modul baru ke proyek Anda menggunakan bagian Modul. Misalnya, di sini Anda dapat mengonfigurasi properti defaultConfig atau mengelola konfigurasi penandatanganan

Ketergantungan


  • periksa dan lihat setiap grafik ketergantungan dari grafik ketergantungan proyek Anda yang dibangun oleh Gradle selama sinkronisasi proyek dengan mengikuti langkah-langkah ini:


    1. di panel kiri PSD, pilih "Dependensi"
    2. di panel "Modul", pilih modul yang ingin Anda lihat dependensinya
    3. di sisi kanan PSD, buka panel "Dependencies Dependencies" seperti yang ditunjukkan di bawah ini

      gambar

  • Anda juga dapat dengan cepat menemukan dan menambahkan dependensi ke proyek Anda dengan memilih modul dan mengklik tombol "+" di bagian "Mendeklarasikan Ketergantungan", lalu memilih jenis dependensi yang ingin Anda tambahkan


  • tergantung pada jenis dependensi yang Anda pilih, Anda akan melihat dialog yang mirip dengan yang ditunjukkan di bawah ini yang membantu Anda menambahkan dependensi ke modul

    gambar



Opsi perakitan


  • di bagian PSD ini, opsi dan variasi build ('rasa produk') dibuat dan dikonfigurasikan untuk setiap modul dalam proyek Anda. Anda dapat menambahkan template nyata ('placeholder'), file ProGuard dan menetapkan kunci penandatanganan, dll.

    gambar

Kiat


  • Anda dapat melihat pembaruan dependensi yang diusulkan untuk proyek Anda dan membangun opsi di bagian "Saran", seperti yang ditunjukkan di bawah ini

    gambar

'Manajer sumber daya' baru


  • 'Resource Manager' adalah alat baru untuk mengimpor, membuat, mengelola, dan menggunakan sumber daya aplikasi Anda. Anda dapat membuka alat ini melalui menu "View> Tool Windows> Resource Manager". Resource Manager memungkinkan Anda untuk melakukan hal berikut:

    gambar


    • Visualisasikan sumber daya: Anda dapat melihat pratinjau drawables, warna, dan tata letak untuk menemukan sumber daya yang tepat dengan cepat
    • Impor massal: Anda dapat mengimpor beberapa aset yang dapat ditarik pada satu waktu hanya dengan menyeretnya ke 'manajer sumber daya' atau melalui panduan Impor yang dapat ditarik. Untuk mengakses wizard, klik tombol "+" di sudut kiri atas jendela dan kemudian pilih "Impor Gambar" dari daftar drop-down
    • Mengonversi file SVG ke VectorDrawables: Anda dapat menggunakan panduan Impor Drawables untuk mengonversi gambar SVG Anda ke VerctorDrawables
    • Seret & Jatuhkan aset: dari jendela 'manajer sumber daya' Anda dapat menyeret drawables ke dalam desain dan widget XML editor tata letak ('Editor Tata Letak')
    • Versi alternatif widget: sekarang Anda dapat memiliki versi alternatif sumber daya Anda dengan mengklik dua kali pada sumber daya di jendela "Alat". Anda akan melihat berbagai versi yang Anda buat dan kualifikasi apa yang dikandungnya.
    • Tampilan ubin atau daftar: Anda dapat mengubah tampilan di jendela visualisasi sumber daya menggunakan tata letak yang berbeda

  • lihat manual Kelola sumber daya aplikasi untuk informasi lebih lanjut.



Memverifikasi ID build saat membuat profil dan men-debug APK


  • saat Anda memberikan "file simbol debugging" dari pustaka .so yang dibagi di dalam APK Anda, Android Studio memeriksa bahwa build ID dari "file simbol debugging" cocok dengan ID build pustaka .so di dalam APK
  • jika Anda mengumpulkan pustaka asli di APK Anda dengan build ID, Android Studio memeriksa apakah build ID dari "file simbol" dan ID build pustaka asli Anda cocok dan mengatur ulang "file simbol" jika tidak ada yang cocok. Jika Anda tidak membangun dengan build ID, maka memberikan "file simbol" yang salah dapat menyebabkan masalah saat debugging

R8 diaktifkan secara default


  • R8 menggabungkan desugaring, kompresi, kebingungan, optimisasi, dan dexing dalam satu langkah, yang memberikan peningkatan kinerja yang nyata. R8 diperkenalkan di plugin Android Gradle 3.3.0 dan sekarang diaktifkan secara default untuk kedua aplikasi dan proyek perpustakaan Android menggunakan plugin versi 3.4.0 atau lebih tinggi


  • Gambar di bawah ini menguraikan proses kompilasi sebelum R8

    gambar


  • sekarang, dengan R8, desugaring, kompresi, kebingungan, optimasi, dan dexing (D8) dilakukan dalam satu langkah, seperti yang ditunjukkan di bawah ini

    gambar


  • R8 dirancang untuk bekerja dengan aturan ProGuard yang ada, jadi Anda tidak perlu mengambil tindakan apa pun untuk memanfaatkan R8. Sementara itu, karena teknologi ini berbeda dari ProGuard, yang dirancang khusus untuk proyek-proyek Android, kompresi dan pengoptimalan dapat berupa penghapusan kode yang tidak dihapus oleh ProGuard. Oleh karena itu, dalam situasi yang tidak biasa ini, Anda mungkin perlu menambahkan aturan tambahan untuk menyimpan kode ini di majelis akhir


  • Jika Anda memiliki masalah dalam menggunakan R8, baca FAQ kompatibilitas R8 untuk memeriksa apakah ada solusi yang sudah jadi. Jika solusinya belum didokumentasikan, harap laporkan bug . Anda dapat menonaktifkan R8 dengan menambahkan salah satu instruksi berikut ke file gradle.properties proyek Anda:

     <i> # nonaktifkan R8 untuk modul Perpustakaan Android saja </i>
     android.enableR8.libraries = false </p>
     <p> <i> # nonaktifkan R8 untuk semua modul </i>
     android.enableR8 = false
    

  • CATATAN: untuk jenis rakitan yang ditentukan, jika Anda menetapkan false untuk useProguard di file build.gradle dari modul aplikasi Anda, plugin Android Gradle akan menggunakan R8 untuk mengompresi kode aplikasi untuk jenis rakitan ini, terlepas dari apakah R8 dinonaktifkan di file gradle.properties proyek Anda




  • Semua jenis yang didukung oleh komponen Navigasi sekarang didukung di Editor Navigasi. Untuk informasi lebih lanjut tentang jenis yang didukung, lihat Mengirim data antar tujuan

Perbaikan dalam Editor Layout


  • panel "Atribut" di Editor Layout telah disederhanakan menjadi satu halaman dengan bagian yang dapat Anda kembangkan untuk mengonfigurasi atribut yang diinginkan. Panel Atribut juga memiliki pembaruan berikut:


    • bagian Declared Attributes baru mencantumkan atribut yang ditentukan dalam file layout dan memungkinkan Anda untuk dengan cepat menambahkan yang baru
    • panel "Atribut" sekarang juga dilengkapi dengan indikator di sebelah setiap atribut yang diisi ketika nilai atribut adalah sumber daya
    • sekarang atribut dengan kesalahan dan peringatan disorot. Sorotan merah menunjukkan kesalahan (misalnya, ketika Anda menggunakan nilai penempatan yang salah), dan oranye menunjukkan peringatan (misalnya, ketika Anda menggunakan nilai yang dikodekan dengan keras)


Kiat tindakan baru untuk mengimpor dependensi dengan cepat


  • jika Anda mulai menggunakan kelas Jetpack dan Firebase tertentu dalam kode Anda, kiat tindakan baru menyarankan menambahkan dependensi pustaka Gradle yang diperlukan untuk proyek Anda, jika belum ditambahkan. Misalnya, jika Anda merujuk ke kelas WorkManager untuk pertama kalinya, Anda memerlukan ketergantungan android.arch.work:work-runtime, dan petunjuk tindakan akan memungkinkan Anda menambahkannya dalam satu klik, seperti yang ditunjukkan di bawah ini

    gambar
  • khususnya, sejak Jetpack disajikan dalam paket terpisah (yang membuatnya lebih mudah untuk mengelola dan memperbaruinya), pintasan tindakan membantu Anda dengan cepat menambahkan hanya dependensi yang diperlukan untuk komponen Jetpack yang Anda gunakan

3.4.0 masalah yang diketahui


  • profil dinonaktifkan ketika Anda menggunakan aplikasi Anda pada perangkat yang menjalankan Android Q Beta
  • ketika Pustaka Pengikat Data digunakan, LiveDataListener.onChanged () dapat jatuh dengan NullPointerException. Perbaikan untuk masalah ini akan dimasukkan dalam Android Studio 3.4.1 dan sudah tersedia dalam versi Pratinjau terbaru dari Android Studio 3.5 (lihat bug 122066788 )

Source: https://habr.com/ru/post/id448860/


All Articles