Catatan rilis Android Studio

Android Studio adalah IDE resmi untuk pengembangan Android, dan telah dilengkapi dengan semua hal yang Anda perlukan untuk membuat aplikasi Android.

Untuk mendapatkan versi terbaru, klik Help > Check for updates (Android Studio > Check for updates di macOS).

Anda juga dapat mendownload Android Studio di sini.

Jika Anda mengalami masalah saat menggunakan Android Studio, lihat halaman Masalah umum atau Pemecahan masalah.

Untuk mengetahui berita terbaru terkait rilis, termasuk daftar perbaikan penting dalam setiap rilis pratinjau, lihat berita rilis.

Guna mendapatkan informasi terkait hal-hal baru di Plugin Android untuk Gradle, lihat catatan rilis.

3.6 (Februari 2020)

Android Studio 3.6 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

Kami juga ingin berterima kasih kepada semua kontributor komunitas yang telah membantu kami dalam rilis ini.

3.6.3 (April 2020)

Update minor ini menyertakan berbagai perbaikan bug. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

3.6.2 (Maret 2020)

Update minor ini menyertakan berbagai perbaikan bug. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

3.6.1 (Februari 2020)

Update minor ini menyertakan berbagai perbaikan bug. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

Alat desain

Versi Android Studio ini mencakup update untuk beberapa alat desain, termasuk Layout Editor dan Resource Manager.

Tampilan terpisah dan zoom dalam editor desain

tampilan terpisah menampilkan desain dan tampilan teks pada waktu yang bersamaan

Update berikut untuk editor desain visual disertakan dalam rilis ini:

  • Editor desain, seperti Layout Editor dan Navigation Editor, kini menyediakan tampilan Split yang memungkinkan Anda melihat tampilan Design dan Code UI Anda pada waktu yang bersamaan. Di pojok kanan atas jendela editor, kini ada tiga tombol ikon tampilan untuk memilih opsi tampilan:

    • Untuk mengaktifkan tampilan terpisah, klik ikon Split ikon tampilan terpisah.
    • Untuk mengaktifkan tampilan sumber XML, klik ikon Source ikon tampilan sumber.
    • Untuk mengaktifkan tampilan desain, klik ikon Design ikon tampilan desain.
  • Kontrol untuk memperbesar/memperkecil dan menggeser dalam editor desain telah dipindahkan ke panel mengambang di pojok kanan bawah jendela editor.

Untuk mempelajari lebih lanjut, lihat Membuat UI dengan Layout Editor.

Tab Resource Pemilih Warna

Untuk membantu Anda memperbarui nilai resource warna dengan cepat di aplikasi saat menggunakan pemilih warna dalam XML atau alat desain, IDE kini mengisi nilai resource warna untuk Anda.

Pemilih warna dengan nilai warna yang terisi

Resource Manager

Resource Manager berisi pembaruan berikut:

  • Resource Manager sekarang mendukung sebagian besar jenis resource.
  • Saat menelusuri resource, Resource Manager kini menampilkan hasil dari semua modul project. Sebelumnya, penelusuran hanya menampilkan hasil dari modul yang dipilih.
  • Tombol filter memungkinkan Anda melihat resource dari modul dependen lokal, library eksternal, dan framework Android. Anda juga dapat menggunakan filter untuk menampilkan atribut tema.
  • Anda kini dapat mengganti nama resource selama proses impor dengan mengklik dalam kotak teks di atas resource.

Untuk mempelajari lebih lanjut, lihat Mengelola resource UI aplikasi dengan Resource Manager.

Update plugin Android Gradle

Versi terbaru plugin Android Gradle mencakup banyak update, termasuk pengoptimalan untuk kecepatan build, dukungan untuk plugin publikasi Maven, dan dukungan untuk View Binding. Untuk mempelajari lebih lanjut, baca catatan rilis lengkap.

View binding

View binding memungkinkan Anda untuk lebih mudah dalam menulis kode yang berinteraksi dengan tampilan, yaitu dengan menghasilkan class binding untuk setiap file tata letak XML. Class ini berisi referensi langsung ke semua tampilan yang memiliki ID dalam tata letak yang terkait.

Karena menggantikan findViewById(), view binding menghilangkan risiko pengecualian pointer null yang dihasilkan dari ID tampilan yang tidak valid.

Untuk mengaktifkan view binding, Anda harus menggunakan plugin Android Gradle 3.6.0 atau yang lebih tinggi dan menyertakan yang berikut ini dalam file build.gradle modul:

android {
        viewBinding.enabled = true
    }
    

Apply Changes

Sekarang Anda dapat menambahkan class lalu men-deploy perubahan kode tersebut ke aplikasi yang sedang berjalan dengan mengklik Apply Code Changes Ikon Apply Code Changes atau Apply Changes and Restart Activity Ikon Apply Changes.

Untuk mempelajari lebih lanjut tentang perbedaan antara dua tindakan ini, lihat Apply Changes.

Memfaktorkan ulang opsi menu untuk mengaktifkan dukungan Aplikasi Instan

Kini Anda dapat mengaktifkan secara instan modul dasar kapan saja setelah membuat aplikasi Anda seperti berikut:

  1. Buka panel Project dengan memilih View > Tool Windows > Project dari panel menu.
  2. Klik kanan pada modul dasar Anda, biasanya dinamai 'app', lalu pilih Refactor > Enable Instant Apps Support.
  3. Pada dialog yang muncul, pilih modul dasar dari menu dropdown.
  4. Klik OK.

Untuk mempelajari lebih lanjut, baca Ringkasan Google Play Instan.

Men-deobfuscate class dan bytecode metode pada Penganalisis APK

Saat menggunakan Penganalisis APK untuk memeriksa file DEX, Anda dapat men-deobfuscate class dan bytecode metode sebagai berikut:

  1. Pilih Build > Analyze APK dari panel menu.
  2. Pada dialog yang muncul, buka APK yang ingin Anda periksa dan pilih.
  3. Klik Open.
  4. Pada Penganalisis APK, pilih file DEX yang ingin diperiksa.
  5. Dalam penampil file DEX, muat file pemetaan ProGuard untuk APK yang sedang Anda analisis.
  6. Klik kanan pada class atau metode yang ingin Anda periksa dan pilih Show bytecode.

Alat native

Update berikut mendukung pengembangan native (C/C++) di Android Studio.

Dukungan Kotlin

Fitur NDK di Android Studio berikut, yang sebelumnya didukung di Java, sekarang juga didukung di Kotlin:

  • Menavigasi dari deklarasi JNI ke fungsi implementasi yang sesuai pada C/C ++. Lihat pemetaan ini dengan mengarahkan kursor pada penanda item C atau C++ di dekat nomor baris di file kode sumber terkelola.
  • Membuat fungsi penerapan stub secara otomatis untuk deklarasi JNI. Tentukan deklarasi JNI terlebih dahulu, lalu ketik "jni" atau nama metode dalam file C/C++ untuk mengaktifkan.

  • Fungsi implementasi native yang tidak digunakan ditandai sebagai peringatan dalam kode sumber. Deklarasi JNI yang tidak memiliki implementasi juga ditandai sebagai error.

  • Jika Anda mengganti nama (memfaktorkan ulang) fungsi implementasi native, semua deklarasi JNI yang terkait akan diperbarui. Ganti nama deklarasi JNI untuk memperbarui fungsi implementasi native.

  • Pemeriksaan tanda tangan untuk implementasi JNI yang terikat secara implisit.

Penyempurnaan JNI lainnya

Editor kode di Android Studio kini mendukung alur kerja pengembangan JNI yang lebih lancar, termasuk petunjuk jenis yang lebih baik, pelengkapan otomatis, pemeriksaan, dan pemfaktoran ulang kode.

Pemuatan ulang APK untuk library native

Anda tidak perlu lagi membuat project baru jika APK dalam project Anda diupdate di luar IDE. Android Studio mendeteksi perubahan pada APK dan memberi Anda opsi untuk mengimpornya kembali.

Melampirkan sumber APK khusus Kotlin

Kini Anda dapat melampirkan sumber APK eksternal khusus Kotlin saat Anda membuat profil dan mendebug APK yang sudah dibuat sebelumnya. Untuk mempelajari lebih lanjut, lihat Melampirkan sumber Kotlin/Java.

Deteksi kebocoran di Memory Profiler

Saat menganalisis heap dump di Memory Profiler, Anda kini dapat memfilter data pembuatan profil yang dianggap Android Studio dapat menunjukkan kebocoran memori untuk instance Activity dan Fragment di aplikasi Anda.

Jenis data yang ditampilkan filter mencakup yang berikut:

  • Instance Activity yang telah dihapus tetapi masih direferensikan.
  • Instance Fragment yang tidak memiliki FragmentManager valid tetapi masih direferensikan.

Dalam situasi tertentu, seperti berikut ini, filter mungkin menghasilkan positif palsu:

  • Fragment dibuat tetapi belum digunakan.
  • Fragment di-cache tetapi bukan sebagai bagian dari FragmentTransaction.

Untuk menggunakan fitur ini, pertama ambil heap dump atau impor file heap dump ke Android Studio. Untuk menampilkan fragmen dan aktivitas yang mungkin membocorkan memori, pilih kotak centang Activity/Fragment Leaks pada panel heap dump Memory Profiler.

Profiler: Deteksi Kebocoran Memori

Memfilter heap dump untuk kebocoran memori.

Emulator

Android Studio 3.6 membantu Anda memanfaatkan beberapa update yang disertakan dalam Android Emulator 29.2.7 dan yang lebih tinggi, seperti yang dijelaskan di bawah ini.

Peningkatan Dukungan Lokasi

Android Emulator 29.2.7 dan yang lebih tinggi menyediakan dukungan tambahan untuk mengemulasi koordinat GPS dan informasi rute. Saat Anda membuka Extended controls Emulator, opsi di tab Location kini disusun di bawah dua tab: Single points dan Routes.

Single points

Di tab Single points, Anda dapat menggunakan webview Google Maps untuk menelusuri lokasi menarik, sama seperti yang Anda lakukan saat menggunakan Google Maps di ponsel atau browser. Saat Anda menelusuri atau mengklik lokasi di peta, Anda dapat menyimpan lokasi dengan memilih Save point di dekat bagian bawah peta. Semua lokasi yang disimpan tercantum di sisi kanan jendela Extended controls.

Untuk menetapkan lokasi Emulator ke lokasi yang Anda pilih di peta, klik tombol Set location di dekat bagian bawah jendela Extended controls.

Tab Single Points di Extended Controls Emulator..

Routes

Mirip dengan tab Single points, tab Routes menyediakan webview Google Maps yang dapat Anda gunakan untuk membuat rute antara dua lokasi atau lebih. Untuk membuat dan menyimpan rute, lakukan langkah berikut:

  1. Dalam tampilan peta, gunakan kolom teks untuk menelusuri tujuan pertama dalam rute Anda.
  2. Pilih lokasi dari hasil penelusuran.
  3. Pilih tombol Navigasi Tombol Navigate di Google Maps..
  4. Pilih titik awal rute Anda dari peta.
  5. (Opsional) Klik Add destination untuk menambahkan perhentian tambahan ke rute Anda.
  6. Simpan rute Anda dengan mengklik Save route di tampilan peta.
  7. Tentukan nama untuk rute dan klik Save.

Untuk menyimulasikan Emulator yang mengikuti rute yang Anda simpan, pilih rute dari daftar Saved routes dan klik Play route di dekat kanan bawah jendela Extended controls. Untuk menghentikan simulasi, klik Stop route.

Tab Routes di Kontrol Extended Controls Emulator..

Untuk terus menyimulasikan Emulator yang mengikuti rute yang ditentukan, aktifkan tombol akses di samping Repeat playback. Untuk mengubah seberapa cepat Emulator mengikuti rute yang ditentukan, pilih opsi dari dropdown Playback speed.

Dukungan multi-tampilan

Android Emulator kini memungkinkan Anda men-deploy aplikasi ke beberapa tampilan, yang mendukung dimensi yang dapat disesuaikan dan dapat membantu Anda menguji aplikasi yang mendukung multi-aplikasi dan multi-tampilan. Saat perangkat virtual sedang berjalan, Anda dapat menambahkan hingga dua tampilan tambahan seperti berikut:

  1. Buka Extended controls, lalu pilih tab Displays.
  2. Tambahkan tampilan lain dengan mengklik Add secondary display.
  3. Dari menu drop-down di bagian Secondary displays, lakukan salah satu langkah berikut:

    1. Pilih salah satu rasio tinggi lebar yang telah ditetapkan sebelumnya
    2. Pilih custom dan tetapkan height, width, serta dpi untuk tampilan kustom Anda.
  4. (Opsional) Klik Add secondary display untuk menambahkan tampilan ketiga.

  5. Klik Apply changes untuk menambahkan tampilan yang ditentukan ke perangkat virtual yang sedang berjalan.

Tambahkan beberapa tampilan untuk tab Extended Controls Display.

Template perangkat virtual dan project baru untuk Android Automotive OS

Saat membuat project baru menggunakan Android Studio, sekarang Anda dapat memilih dari tiga template dari tab Automotive di wizard Create New Project: No Activity, Media service, dan Messaging service. Untuk project yang sudah ada, Anda dapat menambahkan dukungan untuk perangkat Android Automotive dengan memilih File > New > New Module dari panel menu, lalu memilih Automotive Module. Wizard Create New Module akan memandu Anda dalam membuat modul baru menggunakan salah satu template project Android Automotive.

Memilih template project Android Automotive..

Selain itu, Anda kini dapat membuat Perangkat Virtual Android (AVD) untuk perangkat OS Android Automotive dengan memilih salah satu opsi berikut di tab Automotive di wizard Virtual Device Configuration.

  1. Polestar 2: Membuat AVD yang mengemulasi head unit Polestar 2.
  2. Automotive (lanskap 1024p): Membuat AVD untuk head unit 1024 x 768 px Android Automotive generik.

Memilih perangkat virtual Android Automotive..

Download SDK yang dapat dilanjutkan

Jika mendownload komponen dan alat SDK menggunakan SDK Manager, Android Studio kini memungkinkan Anda melanjutkan download yang terhenti (misalnya, karena masalah jaringan), alih-alih memulai ulang download dari awal. Penyempurnaan ini sangat berguna untuk download besar, seperti Android Emulator atau image sistem, saat koneksi internet tidak dapat diandalkan.

Selain itu, jika Anda memiliki tugas download SDK yang berjalan di latar belakang, kini Anda dapat menjeda atau melanjutkan download menggunakan kontrol di status bar.

Tugas download latar belakang di status bar dengan kontrol baru yang memungkinkan Anda menjeda atau melanjutkan download.

Tugas download latar belakang di status bar dengan kontrol baru yang memungkinkan Anda menjeda atau melanjutkan download.

Win32 tidak digunakan lagi

Versi Windows 32 bit Android Studio tidak lagi menerima update setelah bulan Desember 2019, dan tidak akan lagi menerima dukungan setelah bulan Desember 2020. Anda dapat terus menggunakan Android Studio. Namun, untuk menerima update tambahan, upgrade komputer Anda ke Windows versi 64 bit.

Untuk mempelajari lebih lanjut, baca blog depresiasi Windows 32 bit.

Opsi baru untuk mengoptimalkan waktu sinkronisasi Gradle

Pada rilis sebelumnya, Android Studio mengambil daftar semua tugas Gradle selama Gradle Sync. Untuk project besar, mengambil daftar tugas dapat menyebabkan waktu sinkronisasi menjadi lambat.

Untuk meningkatkan performa Gradle Sync, buka File > Settings > Experimental dan pilih Do not build Gradle task list during Gradle sync.

Jika Anda mengaktifkan opsi ini, Android Studio akan melewati pembuatan daftar tugas selama sinkronisasi, yang memungkinkan Gradle Sync diselesaikan lebih cepat dan meningkatkan responsivitas UI. Perlu diingat, saat IDE melewati pembuatan daftar tugas, daftar tugas di panel Gradle akan kosong, dan pelengkapan otomatis nama tugas di file build tidak akan bekerja.

Lokasi baru untuk mengaktifkan atau menonaktifkan mode offline Gradle

Untuk mengaktifkan atau menonaktifkan mode offline Gradle, pertama pilih View > Tool Windows > Gradle dari panel menu. Kemudian, di dekat bagian atas jendela Gradle, klik Toggle Offline Mode Tombol offline Gradle pada panel Gradle..

IntelliJ IDEA 2019.2

Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2019.2.

Untuk mempelajari lebih lanjut penyempurnaan dari versi IntelliJ lain yang disertakan secara kumulatif dengan versi 2019.2, lihat halaman berikut:

Kontributor komunitas

Terima kasih kepada semua kontributor komunitas yang telah membantu kami menemukan bug dan cara lain untuk meningkatkan Android Studio 3.6. Secara khusus, kami ingin berterima kasih kepada orang-orang berikut yang melaporkan bug:

  • Albert Lo
  • Alexey Rott
  • Andrea Leganza
  • Benedikt Kolb
  • César Puerta
  • Curtis Kroetsch
  • Damian Wieczorek
  • Dan Lew
  • David Burström
  • Deepanshu
  • Egor Andreevici
  • Eli Graber
  • Emin Kokalari
  • Evan Tatarka
  • Frantisek Nagy
  • Greg Moens
  • Hannes Achleitner
  • Hans Petter Eide
  • Henning Bunk
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Joe Rogers
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • Luke Fielke
  • Malvin Sutanto
  • Masatoshi Kubode
  • Mathew Winters
  • Michael Bailey
  • Michał Górny
  • Mihai Neacsu
  • Mike Scamell
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nick Firmani
  • Nicklas Ansman Giertz
  • Niclas Kron
  • Nicolás Lichtmaier
  • Niek Haarman
  • Niels van Hove
  • Niklas Baudy
  • Renato Goncalves
  • Roar Grønmo
  • Ruslan Baratov
  • Sinan Kozak
  • Slawomir Czerwinski
  • Stefan Wolf
  • Stephen D'Amico
  • Tao Wang
  • Tomas Chladek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Zac Sweers
  • 3.5 (Agustus 2019)

    Android Studio 3.5 merupakan rilis utama dan hasil dari Project Marble. Dimulai dengan rilis Android Studio 3.3, inisiatif Project Marble telah menjangkau beberapa rilis yang berfokus pada peningkatan tiga area utama IDE: kesiapan sisistem, penyempurnaan fitur, dan perbaikan bug.

    Untuk informasi tentang hal ini dan update Project Marble lainnya, baca postingan blog Developer Android atau bagian di bawah.

    Kami juga ingin berterima kasih kepada semua kontributor komunitas yang telah membantu kami dalam rilis ini.

    3.5.3 (Desember 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan penyempurnaan performa.

    3.5.2 (November 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan peningkatan performa. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di Blog Berita Rilis.

    3.5.1 (Oktober 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan peningkatan performa. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di Blog Berita Rilis.

    Project Marble: Kesiapan sistem

    Bagian ini menjelaskan perubahan pada Android Studio 3.5 yang berfokus pada peningkatan kesiapan sistem.

    Setelan memori yang direkomendasikan

    Android Studio sekarang akan memberi tahu Anda jika mendeteksi bahwa Anda dapat menyempurnakan performa dengan meningkatkan jumlah maksimum RAM yang harus dialokasikan oleh OS Anda untuk proses Android Studio, seperti IDE inti, Daemon Gradle, dan daemon Kotlin. Anda dapat menyetujui setelan yang direkomendasikan dengan mengklik link tindakan di notifikasi, atau Anda dapat menyesuaikan setelan ini secara manual dengan memilih File > Settings (atau Android Studio > Preferences di macOS ), lalu menemukan bagian Memory Settings pada Appearance & Behavior > System Settings. Untuk mempelajari lebih lanjut, lihat Ukuran heap maksimum.

    Notifikasi terkait setelan memori yang direkomendasikan.

    Notifikasi terkait setelan memori yang direkomendasikan.

    Laporan penggunaan memori

    Masalah memori di Android Studio terkadang sulit direproduksi dan dilaporkan. Untuk membantu mengatasi masalah ini, Android Studio memungkinkan Anda membuat laporan penggunaan memori dengan mengklik Help > Analyze Memory Usage dari panel menu. Jika itu yang Anda lakukan, IDE akan membersihkan data secara lokal untuk informasi pribadi sebelum menanyakan apakah Anda ingin mengirimnya ke tim Android Studio untuk membantu mengidentifikasi sumber masalah memori. Untuk mempelajari lebih lanjut, lihat Menjalankan laporan penggunaan memori.

    Laporan penggunaan memori.

    Laporan penggunaan memori.

    Windows: Pengoptimalan I/O file antivirus

    Android Studio sekarang otomatis memeriksa apakah direktori project tertentu dikecualikan dari pemindaian antivirus secara real-time. Jika penyesuaian dapat dilakukan untuk meningkatkan performa build, Android Studio akan memberi tahu Anda dan memberikan petunjuk tentang cara mengoptimalkan konfigurasi antivirus. Untuk mempelajari lebih lanjut, lihat Meminimalkan dampak software antivirus pada kecepatan build.

    Project Marble: Penyempurnaan fitur

    Bagian ini menjelaskan perubahan pada Android Studio 3.5 yang berfokus pada peningkatan fitur yang ada.

    Apply Changes

    Apply Changes memungkinkan Anda mengirim perubahan kode dan resource ke aplikasi yang sedang berjalan tanpa memulai ulang aplikasi—dan, dalam beberapa kasus, tanpa memulai ulang aktivitas saat ini. Apply Changes mengimplementasikan pendekatan yang sama sekali baru untuk mempertahankan status aplikasi. Tidak seperti Instant Run, yang menulis ulang bytecode APK, Apply Changes menentukan kembali class sewaktu proses berjalan dengan memanfaatkan instrumentasi runtime yang didukung pada Android 8.0 (API level 26) atau yang lebih tinggi.

    Untuk mempelajari lebih lanjut, lihat Apply Changes.

    Tombol toolbar untuk Apply Changes.

    Tombol toolbar untuk Apply Changes.

    Alur penerapan aplikasi

    IDE memiliki menu drop-down baru yang memungkinkan Anda dengan cepat memilih perangkat yang ingin Anda gunakan untuk men-deploy aplikasi. Menu ini juga menyertakan opsi baru yang memungkinkan Anda menjalankan aplikasi di beberapa perangkat sekaligus.

    Menu drop-down perangkat target.

    Menu drop-down perangkat target.

    Meningkatkan sinkronisasi Gradle dan deteksi cache

    IDE sekarang mendeteksi lebih optimal ketika Gradle menghapus cache build Anda secara berkala saat mengurangi konsumsi hard disk-nya. Pada versi sebelumnya, status ini menyebabkan IDE melaporkan dependensi yang hilang dan sinkronisasi Gradle yang gagal. Sekarang, IDE cukup mendownload dependensi jika diperlukan untuk memastikan bahwa sinkronisasi Gradle berhasil diselesaikan.

    Peningkatan output error build

    Jendela Build Ikon jendela build sekarang menyediakan laporan error yang lebih baik, seperti link ke file dan baris error yang dilaporkan, untuk proses build berikut:

    • Kompilasi AAPT dan penautan
    • R8 dan ProGuard
    • Dexing
    • Penggabungan resource
    • Penguraian file XML
    • Kompilasi Javac, Kotlinc, dan CMake

    Upgrade Project

    Meningkatkan pengalaman update untuk memberikan lebih banyak informasi dan tindakan guna membantu Anda mengupdate IDE dan plugin Android Gradle. Misalnya, lebih banyak error sinkronisasi dan build menyertakan tindakan untuk membantu Anda mengurangi error saat mengupdate.

    Harus diingat, Anda dapat mengupdate IDE secara terpisah dari komponen lain, seperti plugin Android Gradle. Jadi, Anda dapat mengupdate IDE dengan aman segera setelah versi yang lebih baru tersedia, dan memperbarui komponen lainnya nanti.

    Layout Editor

    Android Studio 3.5 menyertakan beberapa peningkatan pada visualisasi tata letak, pengelolaan, dan interaksi.

    Saat menangani ConstraintLayout, bagian Constraints baru dalam panel Attributes mencantumkan hubungan batasan komponen UI yang dipilih. Anda dapat memilih batasan baik dari permukaan desain atau dari daftar batasan untuk menandai batasan di kedua area.

    Hubungan batasan untuk elemen UI yang dipilih.

    Hubungan batasan untuk elemen UI yang dipilih.

    Demikian pula, Anda sekarang dapat menghapus batasan dengan memilihnya dan menekan tombol Delete. Anda juga dapat menghapus batasan dengan menahan tombol Control (Command pada macOS) dan mengklik anchor batasan. Ingat bahwa saat Anda menahan tombol Control atau Command dan mengarahkan kursor ke atas anchor, semua batasan yang terkait berubah menjadi merah untuk menunjukkan bahwa Anda dapat mengklik untuk menghapusnya.

    Saat tampilan dipilih, Anda dapat membuat batasan dengan mengklik ikon + apa pun di bagian Constraint Widget pada panel Attributes, seperti yang ditunjukkan pada gambar berikut. Saat Anda membuat batasan baru, Layout Editor akan memilih dan menandai batasan, memberikan masukan visual langsung untuk yang baru saja Anda tambahkan.

    Animasi yang menampilkan cara menggunakan widget batasan untuk membuat batasan.

    Menggunakan widget batasan untuk membuat batasan.

    Saat membuat batasan, Layout Editor kini hanya menampilkan titik link yang memenuhi syarat yang dapat Anda batasi. Sebelumnya, Layout Editor menandai semua titik link pada semua tampilan, terlepas dari apakah Anda dapat membatasinya atau tidak. Selain itu, overlay biru sekarang menandai target batasan. Penyorotan ini sangat berguna saat mencoba untuk membatasi komponen yang tumpang tindih dengan komponen lain.

    Animasi yang menampilkan cara membuat batasan untuk komponen yang tumpang tindih di Android Studio 3.4.

    Membuat batasan untuk komponen yang tumpang-tindih di Android Studio 3.4.

    Animasi yang menampilkan cara membuat batasan untuk komponen yang tumpang-tindih di Android Studio 3.5.

    Membuat batasan untuk komponen yang tumpang-tindih di Android Studio 3.5.

    Selain update di atas, Android Studio 3.5 juga berisi penyempurnaan Layout Editor berikut:

    • Constraint Widget dan drop-down margin default kini memungkinkan Anda untuk menggunakan resource dimensi untuk margin.
    • Pada toolbar Layout Editor, daftar perangkat yang menentukan ukuran permukaan desain telah diperbarui. Selain itu, perilaku pengepasan saat mengubah ukuran telah disempurnakan, dan ukurannya yang menangani pada permukaan desain sekarang selalu terlihat. Saat mengubah ukuran, overlay baru akan muncul yang menunjukkan ukuran perangkat yang umum.
    • Layout Editor memiliki skema warna baru yang meningkatkan konsistensi dan mengurangi kontras antara komponen, teks, dan batasan.
    • Mode cetak biru kini menyertakan dukungan teks untuk beberapa komponen yang tidak menampilkan teks.

    Untuk informasi selengkapnya tentang perubahan ini, lihat Android Studio Project Marble: Layout Editor.

    Data Binding

    Selain menambahkan dukungan pemrosesan anotasi inkremental untuk Data Binding, IDE meningkatkan performa dan fitur smart editor saat membuat ekspresi data binding dalam XML.

    Animasi yang menampilkan performa editor kode di Android Studio 3.4.

    Performa editor kode di Android Studio 3.4.

    Animasi yang menampilkan performa editor kode di Android Studio 3.5.

    Peningkatan performa pengeditan kode di Android Studio 3.5.

    Peningkatan dukungan untuk project C/C++

    Android Studio 3.5 mencakup beberapa perubahan yang meningkatkan dukungan untuk project C/C++.

    Peningkatan panel Build Variants untuk sinkronisasi varian tunggal

    Kini Anda dapat menentukan varian build aktif dan ABI aktif di panel Build Variants. Fitur ini menyederhanakan konfigurasi build per modul dan juga dapat meningkatkan performa sinkronisasi Gradle.

    Untuk mempelajari lebih lanjut, lihat Mengubah varian build.

    Panel Build Variants yang menampilkan pemilihan varian tunggal oleh ABI

    Panel Build Variants dengan pemilihan varian tunggal oleh ABI.

    Versi NDK berdampingan

    Sekarang, Anda dapat menggunakan beberapa versi NDK secara berdampingan. Fitur ini memberikan lebih banyak fleksibilitas saat mengonfigurasi project Anda—misalnya, jika Anda memiliki project yang menggunakan versi NDK yang berbeda pada mesin yang sama.

    Jika project Anda menggunakan plugin Android Gradle 3.5.0 atau lebih tinggi, Anda juga dapat menentukan versi NDK yang harus digunakan oleh setiap modul dalam project Anda. Anda dapat menggunakan fitur ini untuk membuat build yang dapat direproduksi dan untuk mengurangi inkompatibilitas antara versi NDK dan plugin Android Gradle.

    Untuk mempelajari lebih lanjut, lihat Menginstal dan mengonfigurasi NDK, CMake, dan LLDB.

    Dukungan Chrome OS

    Android Studio kini secara resmi mendukung perangkat Chrome OS, seperti HP Chromebook x360 14, Acer Chromebook 13/Spin 13, dan lainnya yang dapat Anda baca di persyaratan sistem. Untuk memulai, download Android Studio di perangkat Chrome OS yang kompatibel dan ikuti petunjuk penginstalan.

    Pengiriman bersyarat untuk modul fitur dinamis

    Pengiriman bersyarat memungkinkan Anda menetapkan persyaratan konfigurasi perangkat tertentu agar modul fitur dinamis otomatis didownload selama penginstalan aplikasi. Misalnya, Anda dapat mengonfigurasi agar modul fitur dinamis yang mencakup fungsionalitas augmented reality (AR) disediakan saat menginstal aplikasi di perangkat yang mendukung AR saja.

    Mekanisme pengiriman ini saat ini mendukung pengontrolan download modul selama proses penginstalan aplikasi berdasarkan konfigurasi perangkat berikut:

    • Fitur hardware dan software perangkat, termasuk versi OpenGL ES
    • Negara pengguna
    • Level API

    Jika perangkat tidak memenuhi semua persyaratan yang Anda tentukan, modul tidak akan didownload pada saat penginstalan aplikasi. Namun, aplikasi Anda dapat meminta untuk mendownload modul secara on demand pada lain waktu menggunakan Play Core Library. Untuk mempelajari lebih lanjut, baca Mengonfigurasi pengiriman bersyarat.

    IntelliJ IDEA 2019.1

    Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2019.1, seperti penyesuaian tema.

    Versi IntelliJ terakhir yang disertakan dengan Android Studio adalah 2018.3.4. Untuk informasi selengkapnya tentang peningkatan versi IntelliJ lain yang disertakan secara kumulatif dengan rilis Android Studio ini, lihat update perbaikan bug berikut:

    Update plugin Android Gradle 3.5.0

    Untuk informasi terkait hal-hal yang baru di plugin Android Gradle 3.5.0, seperti peningkatan dukungan untuk pemrosesan anotasi inkremental dan pengujian unit yang dapat di-cache, lihat catatan rilis.

    Kontributor komunitas

    Terima kasih kepada semua kontributor komunitas yang telah membantu kami menemukan bug dan cara lain untuk meningkatkan Android Studio 3.5. Secara khusus, kami ingin berterima kasih kepada orang-orang berikut yang melaporkan bug P0 dan P1:

    3.4 (April 2019)

    Android Studio 3.4 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

    3.4.2 (Juli 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan peningkatan performa. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

    3.4.1 (Mei 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan peningkatan performa. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

    Masalah umum 3.4.0

    • Pembuatan profil dinonaktifkan saat men-deploy aplikasi ke perangkat yang menjalankan Android Q Beta.

    • Saat menggunakan Library Data Binding, LiveDataListener.onChanged() mungkin gagal dengan NPE. Perbaikan untuk masalah ini akan disertakan dalam Android Studio 3.4.1 dan sudah tersedia di Versi pratinjau Android Studio 3.5 terbaru. (Lihat masalah #122066788)

    IntelliJ IDEA 2018.3.4

    Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2018.3.4.

    Update plugin Gradle Android 3.4.0

    Untuk mengetahui informasi terkait hal-hal baru di plugin Gradle Android 3.4.0, lihat catatan rilis.

    Dialog Project Structure Baru

    Dialog Project Structure (PSD) yang baru memudahkan dalam memperbarui dependensi dan mengonfigurasi beragam aspek project, seperti modul, varian build, konfigurasi penandatanganan, serta variabel build.

    Anda dapat membuka PSD dengan memilih File > Project Structure dari panel menu. Anda juga dapat membuka PSD dengan menekan Ctrl+Shift+Alt+S pada Windows dan Linux, atau Command+; (titik koma) di macOS. Anda dapat menemukan deskripsi dari beberapa bagian PSD yang baru dan diperbarui di bawah ini.

    Variabel

    Bagian variabel baru PSD memungkinkan Anda membuat dan mengelola berbagai variabel build, seperti variabel untuk menjaga agar nomor versi untuk dependensi konsisten di seluruh project Anda.

    • Lihat dan edit variabel build yang sudah ada di skrip build Gradle project Anda dengan cepat.
    • Tambahkan variabel build baru pada tingkat project atau modul secara langsung dari PSD.

    Modul

    Konfigurasikan properti yang diterapkan untuk semua varian build di modul yang ada atau tambahkan modul baru ke project Anda melalui bagian Modules. Misalnya, di sini Anda dapat mengonfigurasi properti defaultConfig atau mengelola konfigurasi penandatanganan.

    Dependensi

    Periksa dan visualisasikan setiap dependensi di grafik dependensi project Anda, seperti yang ditetapkan Gradle selama sinkronisasi project, dengan mengikuti langkah-langkah berikut:

    1. Di panel kiri PSD, pilih Dependencies.
    2. Di panel Modules, pilih modul dengan dependensi ditetapkan yang ingin Anda periksa.
    3. Di sisi kanan PSD, buka panel Resolved Dependencies yang ditampilkan di bawah ini.

    Anda juga dapat menelusuri dan menambahkan dependensi secara cepat ke project Anda dengan terlebih dahulu memilih modul dari bagian Dependencies PSD, mengklik tombol (+) di bagian Declared Dependencies, lalu memilih jenis dependensi yang ingin ditambahkan.

    Tergantung pada jenis dependensi yang dipilih, Anda akan melihat dialog seperti yang ada di bawah ini, yang membantu Anda menambahkan dependensi ke modul.

    Varian Build

    Di bagian PSD ini, buat dan konfigurasikan varian build serta ragam produk untuk setiap modul dalam project. Anda dapat menambahkan placeholder manifes, file ProGuard, serta menetapkan kunci penandatanganan, dan masih banyak lagi.

    Saran

    Lihat update yang disarankan untuk dependensi project dan variabel build di bagian Suggestions, seperti ditampilkan di bawah ini.

    Resource Manager Baru

    Resource Manager adalah jendela alat baru untuk mengimpor, membuat, mengelola, dan menggunakan resource di aplikasi Anda. Anda dapat membuka jendela alat dengan memilih View > Tool Windows > Resource Manager dari panel menu. Resource Manager memungkinkan Anda melakukan hal-hal berikut:

    • Memvisualisasikan resource: Anda dapat melihat pratinjau aset yang dapat digambar, warna, dan tata letak untuk menemukan resource yang diperlukan dengan cepat.
    • Impor massal: Anda dapat mengimpor beberapa aset yang dapat digambar sekaligus dengan menarik lalu melepas aset ke jendela fitur Resource Manager atau dengan menggunakan wizard Import drawables. Untuk mengakses wizard tersebut, pilih tombol (+) di pojok kiri atas jendela alat, lalu pilih Import Drawables dari menu drop-down.
    • Mengonversi SVG menjadi objek VectorDrawable: Anda dapat menggunakan wizard Import Drawables untuk mengonversi gambar SVG ke dalam objek VectorDrawable.
    • Menarik lalu melepas aset: Dari jendela alat Resource Manager, Anda dapat menarik lalu melepas drawable ke tampilan desain atau XML di Layout Editor.
    • Melihat versi alternatif: Kini Anda dapat melihat versi alternatif resource dengan mengklik dua kali pada resource yang ada di dalam jendela Tool. Tampilan ini menunjukkan berbagai versi yang telah Anda buat dan qualifier yang disertakan.
    • Tampilan kotak dan daftar: Anda dapat mengubah tampilan di dalam jendela alat untuk memvisualisasikan resource dengan pengaturan yang berbeda.

    Untuk mempelajari lebih lanjut, baca panduan cara Mengelola resource aplikasi.

    Memeriksa ID build saat pembuatan profil dan proses debug APK

    Setelah Anda memberikan file simbol debug untuk library bersama .so di dalam APK, Android Studio akan memverifikasi bahwa ID build dari file simbol yang diberikan cocok dengan ID build dari library .so di dalam APK.

    Jika Anda mem-build library native di APK dengan ID build, Android Studio akan memeriksa apakah ID build di file simbol sesuai dengan ID build di library native Anda dan akan menolak file simbol jika tidak cocok. Jika Anda tidak menggunakan ID build saat proses build, memberikan file simbol yang salah dapat menyebabkan masalah saat proses debug.

    R8 diaktifkan secara default

    R8 mengintegrasikan desugaring, penyusutan, obfuscation, pengoptimalan, dan dexing dalam satu langkah sehingga menghasilkan peningkatan performa build yang cukup signifikan. R8 diperkenalkan di plugin Gradle Android 3.3.0 dan kini diaktifkan secara default untuk project aplikasi serta library Android yang menggunakan plugin 3.4.0 dan yang lebih baru.

    Gambar di bawah ini memberikan ringkasan umum tentang proses kompilasi sebelum R8 diperkenalkan.

    Sebelum R8, ProGuard adalah langkah kompilasi yang berbeda dengan dexing dan desugaring.

    Sekarang, dengan R8, desugaring, penyusutan, penyamaran, pengoptimalan, dan dexing (D8) dapat diselesaikan dalam satu langkah, seperti yang diilustrasikan di bawah ini.

    Dengan R8, desugaring, penyusutan, obfuscation, pengoptimalan, dan dexing, dilakukan dalam satu langkah kompilasi.

    Perlu diperhatikan bahwa R8 dirancang agar kompatibel dengan aturan ProGuard yang telah ada, sehingga Anda mungkin tidak perlu mengambil tindakan apa pun untuk mendapatkan manfaat dari R8. Namun, karena teknologinya berbeda dengan ProGuard yang secara khusus dirancang untuk project Android, penyusutan, dan pengoptimalan dapat menyebabkan penghapusan kode yang mungkin tidak dilakukan ProGuard. Jadi, dalam situasi yang jarang terjadi ini, Anda mungkin perlu menambahkan aturan lain untuk menjaga kode tersebut pada output build Anda.

    Jika mengalami masalah saat menggunakan R8, baca FAQ kompatibilitas R8 untuk memeriksa apakah ada solusi untuk masalah Anda. Jika solusi tidak terdokumentasi, silakan laporkan bug. Anda dapat menonaktifkan R8 dengan menambahkan salah satu baris berikut ke file gradle.properties project:

    # Disables R8 for Android Library modules only.
        android.enableR8.libraries = false
        # Disables R8 for all modules.
        android.enableR8 = false
        

    Semua jenis argumen yang didukung oleh komponen Navigation kini didukung di Navigation Editor. Untuk mengetahui informasi selengkapnya tentang jenis-jenis yang didukung, lihat Meneruskan data antartujuan.

    Penyempurnaan Layout Editor

    Panel Attributes di Layout Editor telah disederhanakan menjadi satu halaman dengan beberapa bagian yang dapat diluaskan untuk menampilkan atribut yang dapat Anda konfigurasi. Panel Attributes juga menyertakan pembaruan berikut:

    • Bagian Declared Attributes baru mencantumkan atribut yang ditentukan file tata letak dan memungkinkan Anda menambahkan atribut baru dengan cepat.
    • Panel Attributes kini juga menampilkan indikator di samping setiap atribut, yaitu solid jika nilai atribut merupakan referensi resource dan kosong jika sebaliknya.
    • Atribut dengan error atau peringatan sekarang ditandai. Sorotan berwarna merah menunjukkan error (misalnya, saat Anda menggunakan nilai tata letak yang tidak valid) dan sorotan berwarna jingga menunjukkan peringatan (misalnya, saat Anda menggunakan nilai hard code).

    Tindakan intent baru untuk mengimpor dependensi dengan cepat

    Jika Anda mulai menggunakan class Jetpack dan Firebase tertentu dalam kode, tindakan intent baru akan menyarankan penambahan dependensi library Gradle yang diperlukan ke project Anda, jika Anda belum melakukannya. Misalnya, jika Anda mereferensikan class WorkManager tanpa mengimpor dependensi android.arch.work:work-runtime yang diperlukan terlebih dahulu, tindakan intent memungkinkan Anda melakukannya dengan mudah dengan sekali klik, seperti yang ditunjukkan di bawah ini.

    Secara khusus, karena Jetpack memaketkan ulang library dukungan menjadi paket terpisah yang lebih mudah dikelola dan diperbarui, tindakan intent ini membantu Anda untuk hanya menambahkan dependensi yang diperlukan bagi komponen Jetpack yang ingin Anda gunakan.

    3.3 (Januari 2019)

    Android Studio 3.3 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

    3.3.2 (Maret 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan peningkatan performa. Untuk melihat daftar perbaikan bug penting, baca postingan terkait di blog Berita Rilis.

    3.3.1 (Februari 2019)

    Update minor ini menyertakan berbagai perbaikan bug dan penyempurnaan performa.

    IntelliJ IDEA 2018.2.2

    Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2018.2.2.

    Update plugin Gradle Android

    Untuk mengetahui informasi terkait hal-hal baru di plugin Gradle Android, lihat catatan rilis.

    Navigation Editor memungkinkan Anda memvisualisasikan dan mem-build navigasi untuk aplikasi dengan cepat menggunakan Komponen Arsitektur Navigasi.

    Untuk mengetahui informasi selengkapnya, lihat Menerapkan navigasi dengan Komponen Arsitektur Navigasi.

    Menghapus direktori Android Studio yang tidak digunakan

    Saat Anda menjalankan versi utama Android Studio untuk pertama kalinya, Android Studio akan mencari direktori yang berisi cache, setelan, indeks, dan log untuk versi Android Studio dengan penginstalan terkait yang tidak dapat ditemukan. Kemudian, dialog Delete Unused Android Studio Directories akan menampilkan lokasi, ukuran, dan waktu perubahan terakhir untuk direktori yang tidak digunakan tersebut dan memberikan opsi untuk menghapusnya.

    Direktori yang dipertimbangkan untuk dihapus oleh Android Studio adalah:

    • Linux: ~/.AndroidStudio[Preview]_X.Y_
    • Mac: ~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]_X.Y_
    • Windows: %USER%\.AndroidStudio[Preview]_X.Y_

    Penyempurnaan lint

    Kini performa lint ketika dipanggil dari Gradle menjadi jauh lebih cepat. Lint dapat berjalan empat kali lebih cepat untuk project yang lebih besar.

    Wizard Create New Project

    Wizard Create New Project memiliki tampilan baru dan berisi pembaruan yang membantu menyederhanakan pembuatan project Android Studio baru.

    Untuk mengetahui informasi selengkapnya, lihat Membuat project.

    Update profiler

    Android Studio 3.3 menyertakan update untuk beberapa profiler individual.

    Peningkatan performa

    Berdasarkan masukan pengguna, performa rendering saat menggunakan profiler telah meningkat secara signifikan. Terus berikan masukan Anda, terutama jika terjadi masalah performa yang berkelanjutan.

    Opsi pelacakan alokasi memori profiler

    Untuk meningkatkan performa aplikasi saat membuat profil, kini Profiler Memori akan secara berkala mengambil sampel alokasi memori secara default. Jika menghendaki, Anda dapat mengubah perilaku ini menggunakan drop-down Allocation Tracking saat menguji perangkat yang menjalankan Android 8.0 (API level 26) atau yang lebih tinggi.

    Dengan drop-down Allocation Tracking, Anda dapat memilih mode-mode berikut:

    • Full: merekam semua alokasi memori objek. Perlu diketahui jika Anda memiliki aplikasi yang mengalokasikan banyak objek, mungkin akan terjadi masalah performa yang signifikan saat membuat profil.
    • Sampled: merekam sampel alokasi memori objek secara berkala. Ini merupakan perilaku default dan tidak berdampak terlalu besar terhadap performa aplikasi saat membuat profil. Anda mungkin akan mengalami beberapa masalah performa pada aplikasi yang mengalokasikan banyak objek dalam jangka waktu singkat.
    • Off: menonaktifkan alokasi memori. Jika belum dipilih, mode ini otomatis diaktifkan saat mengambil rekaman CPU, lalu dikembalikan ke setelan sebelumnya setelah perekaman selesai. Anda dapat mengubah perilaku ini di dialog konfigurasi perekaman aktivitas CPU.

      Pelacakan memengaruhi objek Java dan referensi JNI.

    Memeriksa data rendering frame

    Di CPU Profiler, kini Anda dapat memeriksa waktu yang dibutuhkan oleh aplikasi Java untuk merender setiap frame pada UI thread utama dan RenderThread. Data ini dapat berguna untuk menyelidiki hambatan yang menyebabkan UI menjadi lambat dan frekuensi gambar menjadi rendah. Misalnya, setiap frame yang memerlukan waktu lebih dari 16 md untuk menjaga kestabilan frekuensi gambar akan ditampilkan dengan warna merah.

    Untuk melihat data rendering frame, rekam aktivitas menggunakan konfigurasi yang memungkinkan Anda melacak panggilan sistem (Trace System Calls). Setelah merekam aktivitas, cari info tentang setiap frame di sepanjang linimasa untuk perekaman pada bagian yang disebut FRAMES, seperti yang ditunjukkan di bawah ini.

    Untuk mempelajari penyelidikan dan perbaikan masalah frekuensi gambar lebih lanjut, baca Rendering lambat.

    Fragmen di linimasa peristiwa

    Linimasa peristiwa kini menunjukkan waktu fragmen dilampirkan dan dilepas. Selain itu, saat Anda mengarahkan kursor ke sebuah fragmen, tooltip akan menampilkan status fragmen tersebut.

    Melihat teks berformat untuk payload sambungan di Network profiler

    Sebelumnya, Network profiler hanya menampilkan teks mentah dari payload sambungan. Android Studio 3.3 kini memformat jenis teks tertentu secara default, termasuk JSON, XML, dan HTML. Di tab Response dan Request, klik link View Parsed untuk menampilkan teks berformat, lalu klik linkView Source untuk menampilkan teks mentah.

    Untuk mengetahui informasi selengkapnya, lihat Memeriksa traffic jaringan dengan Network Profiler.

    Mendownload komponen SDK secara otomatis

    Jika project membutuhkan komponen SDK dari platform SDK, NDK, atau CMake, kini Gradle akan mencoba mendownload paket yang diperlukan secara otomatis asalkan sebelumnya Anda telah menyetujui perjanjian lisensi terkait melalui SDK Manager.

    Untuk mengetahui informasi selengkapnya, lihat Mendownload otomatis paket yang tidak ada dengan Gradle.

    Dukungan untuk Clang-Tidy

    Kini Android Studio menyediakan dukungan untuk analisis kode statis menggunakan Clang-Tidy bagi project yang menyertakan kode native. Guna mengaktifkan dukungan untuk Clang-Tidy, update NDK ke versi r18 atau yang lebih tinggi.

    Kemudian, Anda dapat mengaktifkan atau mengaktifkan kembali fitur pemeriksaan ini dengan membuka dialog Settings atau Preferences, lalu memilih Editor > Inspections > C/C++ > General > Clang-Tidy. Saat memilih pemeriksaan ini pada dialog Settings atau Preferences, Anda juga dapat melihat daftar pemeriksaan Clang-Tidy yang diaktifkan dan dinonaktifkan di bagian Option pada panel paling kanan. Untuk mengaktifkan pemeriksaan tambahan, tambahkan pemeriksaan ke daftar, lalu klik Apply.

    Untuk mengonfigurasi Clang-Tidy dengan opsi tambahan, klik Configure Clang-Tidy Checks Options, lalu tambahkan opsi di dialog yang terbuka.

    Penghapusan opsi untuk kustomisasi C++

    Opsi berikut telah dihapus dari dialog Customize C++ Support:

    • Exceptions Support (-fexceptions)
    • Runtime Type Information Support (-ftti)

    Masing-masing perilaku diaktifkan untuk semua project yang dibuat melalui Android Studio.

    CMake versi 3.10.2

    CMake versi 3.10.2 kini disertakan dalam SDK Manager. Perhatikan bahwa secara default, Gradle masih menggunakan versi 3.6.0.

    Untuk menentukan versi CMake agar Gradle dapat digunakan, tambahkan berikut ini ke file build.gradle modul Anda:

    android {
            ...
            externalNativeBuild {
                cmake {
                    ...
                    version "3.10.2"
                }
            }
        }
        

    Untuk informasi lebih lanjut tentang cara mengonfigurasi CMake di build.gradle, lihat Mengonfigurasi Gradle secara manual.

    Sintaks "+" baru untuk menentukan versi minimum CMake

    Saat menentukan versi CMake di file build.gradle modul utama, Anda kini dapat menambahkan “+” untuk mencocokkan perilaku perintah cmake_minimum_required() CMake.

    Android App Bundles kini mendukung Aplikasi Instan

    Android Studio sekarang memungkinkan Anda membuat Android App Bundle dengan dukungan penuh untuk Google Play Instant. Dengan kata lain, kini Anda dapat mem-build dan men-deploy aplikasi terinstal serta pengalaman instan dari satu project Android Studio dan menyertakannya dalam satu Android App Bundle.

    Jika Anda membuat project Android Studio baru menggunakan dialog Create New Project, pastikan Anda mencentang kotak di samping Configure your project > This project will support instant apps. Kemudian, Android Studio akan membuat project aplikasi baru seperti biasanya, tetapi menyertakan properti berikut di manifes Anda untuk menambahkan dukungan Aplikasi instan ke modul dasar aplikasi:

    <manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
            <dist:module dist:instant="true" />
            ...
        </manifest>
        

    Anda dapat membuat modul fitur dinamis dengan dukungan akses instan dengan memilih File > New > New Module dari panel menu, lalu memilih Instant Dynamic Feature Module dari dialog Create New Module. Perlu diingat bahwa dengan membuat modul ini, modul dasar aplikasi Anda juga diaktifkan secara instan.

    Untuk men-deploy aplikasi sebagai pengalaman instan di perangkat lokal, edit konfigurasi peluncuran dan centang kotak di sebelah General > Deploy as instant app.

    Sinkronisasi project varian tunggal

    Menyinkronkan project dengan konfigurasi build merupakan langkah penting yang akan memungkinkan Android Studio memahami struktur project. Namun, untuk project besar, proses ini dapat membutuhkan waktu lama. Jika project menggunakan banyak varian build, sekarang Anda dapat mengoptimalkan sinkronisasi project dengan membatasinya hanya ke varian yang saat ini Anda pilih.

    Anda harus menggunakan Android Studio 3.3 atau yang lebih tinggi dengan plugin Gradle Android 3.3.0 atau yang lebih baru untuk mengaktifkan pengoptimalan ini. Jika Anda memenuhi persyaratan ini, IDE akan meminta Anda mengaktifkan pengoptimalan ini pada saat sinkronisasi project. Pengoptimalan juga diaktifkan secara default pada project baru.

    Untuk mengaktifkan pengoptimalan ini secara manual, klik File > Settings > Experimental > Gradle (Android Studio > Preferences > Experimental > Gradle di Mac), lalu centang kotak Only sync the active variant.

    Untuk informasi selengkapnya, lihat Mengaktifkan sinkronisasi project varian tunggal.

    Memberikan masukan cepat

    Jika memilih untuk membagikan statistik penggunaan guna membantu menyempurnakan Android Studio, Anda akan melihat dua ikon baru ini pada status bar di bagian bawah jendela IDE:

    Cukup klik ikon yang paling mewakili pengalaman Anda saat ini dengan IDE. Setelah melakukannya, IDE akan mengirimkan statistik penggunaan yang memungkinkan tim Android Studio untuk memahami pengalaman Anda dengan lebih baik. Dalam beberapa kasus, misalnya saat melaporkan pengalaman negatif dengan IDE, Anda akan diberi kesempatan untuk memberikan masukan tambahan.

    Jika belum melakukannya, Anda dapat mengaktifkan berbagi statistik penggunaan dengan membuka dialog Settings (Preferences di Mac), membuka Appearance & Behavior > System Settings > Data Sharing, dan mencentang Send usage statistics to Google.

    3.2 (September 2018)

    Android Studio 3.2 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

    3.2.1 (Oktober 2018)

    Update untuk Android Studio 3.2 ini menyertakan perubahan dan perbaikan berikut:

    • Versi paket Kotlin saat ini adalah 1.2.71.
    • Versi alat build default saat ini adalah 28.0.3.
    • Di library Navigation, jenis argumen telah diganti namanya dari type menjadi argType.
    • Bug berikut telah diperbaiki:
      • Saat menggunakan library Data Binding, nama variabel dengan garis bawah menyebabkan error kompilasi.
      • CMake menyebabkan IntelliSense dan fitur CLion lainnya gagal.
      • Menambahkan SliceProvider menyebabkan error kompilasi dalam project yang tidak menggunakan library androidx.*.
      • Beberapa pengujian unit Kotlin tidak dijalankan.
      • Masalah dengan data binding menyebabkan PsiInvalidElementAccessException.
      • Elemen <merge> terkadang menyebabkan Layout Editor berhenti berfungsi.

    Masalah umum 3.2.0

    Catatan: Masalah ini telah diatasi di Android Studio 3.2.1

    • Kami sangat tidak menyarankan penggunaan Kotlin versi 1.2.70.

      Kotlin versi 1.2.61 memperbaiki bug yang dapat menyebabkan Android Studio macet, tetapi Kotlin 1.2.70 tidak menyertakan perbaikan ini.

      Namun, Kotlin versi 1.2.71 dan yang lebih baru menyertakan perbaikan ini.

    • Meskipun biasanya Anda tidak perlu menentukan versi alat build, saat menggunakan plugin Android Gradle 3.2.0 dengan renderscriptSupportModeEnabled disetel ke true, Anda harus menyertakan berikut ini di setiap file build.gradle modul:

      android.buildToolsVersion "28.0.3"

    Asisten Yang Baru

    Asisten baru menginformasikan perubahan terbaru di Android Studio kepada Anda.

    Asisten ini akan terbuka saat Anda memulai Android Studio setelah melakukan penginstalan baru atau update jika asisten mendeteksi adanya informasi baru untuk ditampilkan. Anda juga dapat membuka asisten ini dengan memilih Help > What's new in Android Studio.

    Android Jetpack

    Android Jetpack membantu mempercepat pengembangan Android dengan komponen, fitur, dan panduan yang meniadakan tugas berulang serta memungkinkan Anda mem-build aplikasi berkualitas tinggi yang dapat diuji dengan lebih cepat dan mudah. Android Studio menyertakan update berikut untuk mendukung Jetpack. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Jetpack.

    Navigation Editor baru terintegrasi dengan komponen navigasi Android Jetpack untuk memberikan tampilan grafis untuk membuat struktur navigasi aplikasi Anda. Navigation Editor menyederhanakan desain dan implementasi navigasi antara berbagai tujuan dalam aplikasi.

    Pada Android Studio 3.2, Navigation Editor merupakan fitur eksperimental. Untuk mengaktifkan Navigation Editor, klik File > Settings (Android Studio > Preferences di Mac), pilih kategori Experimental pada panel kiri, centang kotak di sebelah Enable Navigation Editor, lalu mulai ulang Android Studio.

    Untuk mempelajari lebih lanjut, baca dokumentasi Navigation Editor.

    Migrasi AndroidX

    Sebagai bagian dari Jetpack, kami memigrasikan Android Support Library ke ekstensi Android baru menggunakan ruang nama androidx. Untuk informasi selengkapnya, lihat ringkasan AndroidX.

    Android Studio 3.2 membantu Anda menyelesaikan proses ini dengan fitur migrasi baru.

    Untuk memigrasikan project yang ada ke AndroidX, pilih Refactor > Migrate to AndroidX. Jika Anda memiliki dependensi Maven yang belum dimigrasikan ke ruang nama AndroidX, sistem build Android Studio juga akan mengonversi dependensi project tersebut secara otomatis.

    Plugin Android Gradle menyediakan flag global berikut yang dapat Anda setel di file gradle.properties:

    • android.useAndroidX: Jika disetel ke true, flag ini menunjukkan bahwa mulai sekarang Anda ingin menggunakan AndroidX. Jika flag ini tidak ada, Android Studio akan berperilaku seolah-olah flag ini disetel ke false.
    • android.enableJetifier: Jika disetel ke true, flag ini menunjukkan bahwa Anda ingin memiliki dukungan alat (dari plugin Android Gradle) untuk otomatis mengonversi library pihak ketiga yang ada, seolah-olah telah ditulis untuk AndroidX. Jika flag tidak ada, Android Studio akan berperilaku seolah-olah flag disetel ke false.

    Kedua flag disetel ke true saat Anda menggunakan perintah Migrate to AndroidX.

    Jika ingin segera mulai menggunakan library AndroidX dan tidak perlu mengonversikan library pihak ketiga yang ada, Anda dapat menyetel flag android.useAndroidX ke true dan flag android.enableJetifier ke false.

    Android App Bundle

    Android App Bundle adalah format upload baru yang mencakup semua kompilasi kode dan resource aplikasi Anda, tetapi menyerahkan pembuatan serta penandatanganan APK ke Google Play Store.

    Model penyajian aplikasi baru Google Play, yang disebut Pengiriman Dinamis, akan menggunakan app bundle Anda untuk membuat dan menayangkan APK yang dioptimalkan untuk setiap konfigurasi perangkat pengguna, sehingga setiap pengguna hanya perlu mendownload kode dan resource yang diperlukan untuk menjalankan aplikasi Anda. Anda tidak perlu lagi membuat, menandatangani, dan mengelola beberapa APK, dan pengguna akan mendapatkan hasil download yang lebih kecil dan lebih dioptimalkan.

    Selain itu, Anda dapat menambahkan modul fitur dinamis ke project aplikasi dan menyertakannya dalam app bundle. Melalui Pengiriman Dinamis, pengguna dapat mendownload dan menginstal fitur dinamis aplikasi Anda sesuai permintaan.

    Untuk membuat bundle, pilih Build > Build Bundle(s) / APK(s) > Build Bundle(s).

    Untuk mengetahui informasi selengkapnya, termasuk petunjuk untuk mem-build dan menganalisis Android App Bundle, lihat Android App Bundle.

    Data sampel di Layout Editor

    Banyak tata letak Android yang memiliki data runtime yang dapat mempersulit visualisasi tampilan dan nuansa tata letak selama tahap desain pengembangan aplikasi. Kini Anda dapat melihat pratinjau tampilan di Layout Editor yang sudah diisi dengan data sampel. Saat Anda menambahkan sebuah tampilan, tombol akan muncul di bawah tampilan tersebut pada jendela Design. Klik tombol ini untuk menyetel atribut tampilan waktu desain. Anda dapat memilih dari berbagai template data sampel dan menentukan jumlah item sampel yang akan digunakan untuk mengisi tampilan.

    Untuk mencoba menggunakan data sampel, tambahkan RecyclerView ke tata letak baru, klik tombol atribut waktu desain di bawah tampilan, dan pilih pilihan dari carousel template data sampel.

    Slice

    Slice menyediakan cara baru untuk menyematkan bagian-bagian dari fungsi aplikasi Anda di lapisan antarmuka pengguna yang lain di Android. Misalnya, dengan Slice, fungsi dan konten aplikasi dapat muncul di saran Google Penelusuran.

    Android Studio 3.2 memiliki template bawaan untuk membantu Anda memperluas aplikasi dengan Slice Provider API baru, beserta pemeriksaan lint baru untuk memastikan Anda mengikuti praktik terbaik saat menyusun Slice.

    Untuk memulai, klik kanan folder project dan pilih New > Other > Slice Provider.

    Untuk mempelajari lebih lanjut, termasuk cara menguji interaksi Slice, baca Panduan memulai Slice.

    Kotlin 1.2.61

    Android Studio 3.2 menyertakan Kotlin 1.2.61, dan Android SDK yang baru terintegrasi secara lebih baik dengan Kotlin. Untuk mengetahui informasi selengkapnya, lihat blog Developer Android.

    IntelliJ IDEA 2018.1.6

    Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2018.1.6.

    Android profiler

    Coba fitur-fitur baru Android Profiler berikut di Android Studio 3.2.

    Sesi

    Sekarang Anda dapat menyimpan data Profiler sebagai sesi untuk dibuka kembali dan diperiksa di lain waktu. Profiler menyimpan data sesi hingga Anda memulai ulang IDE.

    Saat Anda merekam pelacakan metode atau mengambil heap dump, IDE akan menambahkan data tersebut (beserta aktivitas jaringan aplikasi Anda) sebagai entri terpisah ke sesi saat ini, dan Anda dapat dengan mudah beralih antar-rekaman untuk membandingkan data.

    System Trace

    Di CPU profiler, pilih konfigurasi System Trace baru untuk memeriksa aktivitas thread dan CPU sistem perangkat Anda. Konfigurasi pelacakan ini dikembangkan di systrace dan berguna untuk menyelidiki masalah tingkat sistem, seperti UI yang lambat.

    Saat menggunakan konfigurasi pelacakan ini, Anda dapat menandai rutinitas kode penting di linimasa profiler secara visual dengan menambahkan native tracing API ke kode C/C++ atau class Trace ke kode Java Anda.

    Memeriksa referensi JNI di Memory Profiler

    Jika Anda men-deploy aplikasi ke perangkat yang menjalankan Android 8.0 (API level 26) atau yang lebih baru, kini Anda dapat memeriksa alokasi memori untuk kode JNI aplikasi menggunakan Memory Profiler.

    Saat aplikasi sedang berjalan, pilih bagian linimasa yang ingin diperiksa dan pilih JNI heap dari menu drop-down di atas daftar class, seperti ditunjukkan di bawah. Selanjutnya, Anda dapat memeriksa objek di heap seperti biasanya dan mengklik dua kali objek di tab Allocation Call Stack untuk melihat di mana referensi JNI dialokasikan dan dilepas dalam kode Anda.

    Mengimpor, mengekspor, dan memeriksa file heap dump memori

    Sekarang Anda dapat mengimpor, mengekspor, dan memeriksa file heap dumb memori .hprof yang dibuat dengan Memory Profiler.

    Impor file .hprof dengan mengklik Start new profiler session pada panel Sessions profiler lalu pilih Load from file. Kemudian, Anda dapat memeriksa datanya di Memory Profiler seperti pada heap dump lainnya.

    Guna menyimpan heap dump untuk ditinjau di lain waktu, gunakan tombol Export Heap Dump di sebelah kanan entri Heap Dump pada panel Sessions. Pada dialog Export As yang muncul, simpan file dengan ekstensi nama file .hprof.

    Merekam aktivitas CPU saat aplikasi dimulai

    Kini Anda dapat merekam aktivitas CPU selama proses startup aplikasi seperti berikut:

    1. Pilih Run > Edit Configurations dari menu utama.
    2. Di tab Profiling pada konfigurasi peluncuran yang diinginkan, centang kotak di sebelah Start recording a method trace on startup.
    3. Pilih konfigurasi perekaman CPU yang ingin digunakan dari menu drop-down.
    4. Deploy aplikasi Anda ke perangkat yang menjalankan Android 8.0 (API level 26) atau yang lebih baru dengan memilih Run > Profile.

    Mengekspor rekaman aktivitas CPU

    Setelah merekam aktivitas CPU dengan CPU Profiler, Anda dapat mengekspor datanya sebagai file .trace untuk dibagikan kepada orang lain atau diperiksa di lain waktu.

    Untuk mengekspor rekaman aktivitas CPU, lakukan langkah berikut:

    1. Klik kanan pada rekaman yang ingin diekspor dari timeline CPU.
    2. Pilih Export trace dari menu drop-down.
    3. Arahkan ke lokasi yang diinginkan untuk menyimpan file, lalu klik Save.

    Mengimpor dan memeriksa file rekaman aktivitas CPU

    Sekarang Anda dapat mengimpor dan memeriksa file .trace yang dibuat dengan Debug API atau CPU Profiler. (Saat ini, Anda tidak dapat mengimpor rekaman System Trace.)

    Impor file rekaman aktivitas dengan mengklik Start new profiler session di panel Sessions profiler, lalu pilih Load from file. Kemudian, Anda dapat memeriksa datanya di CPU Profiler dengan cara yang mirip seperti biasanya, tetapi terdapat beberapa pengecualian:

    • Aktivitas CPU tidak direpresentasikan di sepanjang linimasa CPU.
    • Linimasa aktivitas thread hanya menunjukkan tempat tersedianya data perekaman aktivitas untuk setiap thread, bukan keadaan thread yang sebenarnya (seperti berjalan, menunggu, atau tidur).

    Merekam aktivitas CPU menggunakan Debug API

    Sekarang Anda dapat memulai dan menghentikan perekaman aktivitas di CPU Profiler dengan menginstrumentasikan aplikasi menggunakan Debug API. Setelah men-deploy aplikasi ke perangkat, profiler akan otomatis mulai merekam aktivitas CPU saat aplikasi Anda memanggil startMethodTracing(String tracePath), dan profiler akan berhenti merekam saat aplikasi Anda memanggil stopMethodTracing(). Selagi merekam aktivitas CPU yang dipicu menggunakan API ini, CPU Profiler akan menampilkan Debug API sebagai konfigurasi perekaman CPU yang dipilih.

    Energy Profiler

    Energy Profiler menampilkan visualisasi perkiraan penggunaan energi aplikasi Anda, beserta peristiwa sistem yang memengaruhi penggunaan energi, seperti wakelock, alarm, dan tugas.

    Energy Profiler muncul sebagai baris baru di bawah jendela Profiler saat Anda menjalankan aplikasi di perangkat yang terhubung atau Android Emulator yang menjalankan Android 8.0 (API 26) atau yang lebih baru.

    Klik baris Energy untuk memperbesar tampilan Energy Profiler. Tempatkan kursor mouse di atas bar pada linimasa untuk melihat perincian penggunaan energi oleh CPU, jaringan, dan resource lokasi (GPS), beserta peristiwa sistem yang relevan.

    Peristiwa sistem yang memengaruhi penggunaan energi ditunjukkan di linimasa System di bawah linimasa Energy. Detail peristiwa sistem dalam rentang waktu yang ditentukan akan ditampilkan pada panel peristiwa saat Anda memilih rentang waktu di linimasa Energy.

    Untuk melihat stack panggilan dan detail peristiwa sistem lainnya, seperti wakelock, pilih peristiwa tersebut di panel peristiwa. Guna melihat kode yang ditetapkan untuk suatu peristiwa sistem, klik dua kali pada entri di stack panggilan.

    Pemeriksaan lint

    Android Studio 3.2 menyertakan banyak fitur baru dan yang disempurnakan untuk pemeriksaan lint.

    Pemeriksaan lint baru ini membantu Anda menemukan dan mengidentifikasi masalah kode yang umum, mulai dari peringatan tentang potensi masalah kegunaan hingga error prioritas tinggi terkait potensi kerentanan keamanan.

    Pemeriksaan lint untuk interoperabilitas Java/Kotlin

    Untuk memastikan bahwa kode Java Anda mendukung interoperabilitas yang lancar dengan kode Kotlin, pemeriksaan lint baru akan menerapkan praktik terbaik seperti yang dijelaskan dalam Panduan Interoperabilitas Kotlin. Contoh pemeriksaan ini mencakup pencarian keberadaan anotasi Nullability, penggunaan kata kunci tetap Kotlin, dan penempatan parameter lambda di akhir.

    Untuk mengaktifkan pemeriksaan ini, klik File > Settings (Android Studio > Preferences di Mac) untuk membuka dialog Settings, klik bagian Editor > Inspections > Android > Lint > Interoperability > Kotlin Interoperability, lalu pilih aturan yang ingin diaktifkan.

    Untuk mengaktifkan pemeriksaan ini untuk build command line, tambahkan baris berikut ke file build.gradle:

    android {
            lintOptions {
                check 'Interoperability'
            }
        }
        

    Pemeriksaan lint untuk Slice

    Pemeriksaan lint baru untuk Slice membantu memastikan bahwa Anda menyusun Slice dengan benar. Misalnya, pemeriksaan lint akan memperingatkan Anda jika tindakan utama ke suatu Slice belum ditetapkan.

    Target Gradle baru

    Gunakan tugas Gradle lintFix yang baru untuk menerapkan semua perbaikan aman yang disarankan oleh pemeriksaan lint langsung ke kode sumber. Contoh pemeriksaan lint yang menyarankan perbaikan yang aman untuk diterapkan adalah SyntheticAccessor.

    Pembaruan metadata

    Berbagai metadata, seperti pemeriksaan cast layanan, telah diperbarui agar pemeriksaan lint berfungsi dengan Android 9 (API level 28).

    Peringatan jika menjalankan lint pada varian baru

    Kini lint mencatat varian dan versi yang digunakan untuk merekam dasar pengukuran, dan lint akan memperingatkan jika Anda menjalankannya pada varian yang berbeda dengan yang digunakan untuk membuat dasar pengukuran.

    Penyempurnaan pemeriksaan lint yang ada

    Android Studio 3.2 menyertakan banyak penyempurnaan untuk pemeriksaan lint yang ada. Misalnya, pemeriksaan siklus resource kini berlaku pada jenis resource lain, dan detektor terjemahan dapat dengan cepat menemukan terjemahan yang tidak ada, di editor.

    ID masalah lebih mudah ditemukan

    Sekarang, ID masalah ditampilkan di lebih banyak tempat, termasuk di jendela Inspection Results. Hal ini memudahkan Anda untuk menemukan informasi yang diperlukan untuk mengaktifkan atau menonaktifkan pemeriksaan tertentu melalui lintOptions di build.gradle.

    Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi opsi lint dengan Gradle.

    Data Binding V2

    Sekarang Data Binding V2 diaktifkan secara default dan kompatibel dengan V1. Dengan kata lain, jika Anda memiliki dependensi library yang dikompilasi dengan V1, Anda dapat menggunakannya dengan project yang memakai Data Binding V2. Namun, perhatikan bahwa project yang menggunakan V1 tidak dapat menggunakan dependensi yang dikompilasi dengan V2.

    Desugaring D8

    Pada Android Studio 3.1, kami mengintegrasikan langkah desugaring ke dalam D8 sebagai fitur eksperimental, sehingga mengurangi waktu build keseluruhan. Pada Android Studio 3.2, desugaring dengan D8 diaktifkan secara default.

    Shrinker kode baru

    R8 adalah fitur baru untuk obfuscation dan penyingkatan kode yang menggantikan ProGuard. Anda dapat mulai menggunakan versi pratinjau R8 dengan menyertakan kode berikut dalam file gradle.properties project:

    android.enableR8 = true
        

    ABI default untuk multi-APK diubah

    Saat membuat multi-APK yang masing-masing menargetkan ABI berbeda, secara default plugin tidak lagi menghasilkan APK untuk ABI berikut: mips, mips64, dan armeabi.

    Jika ingin membuat APK yang menargetkan ABI ini, Anda harus menggunakan NDK r16b atau yang lebih lama dan menentukan ABI dalam file build.gradle Anda, seperti ditunjukkan di bawah ini:

        splits {
            abi {
                include 'armeabi', 'mips', 'mips64'
                ...
            }
        }
        

    Fitur editor yang disempurnakan untuk file build CMake

    Jika Anda menggunakan CMake untuk menambahkan kode C dan C++ ke project, kini Android Studio menyertakan fitur editor yang disempurnakan guna membantu Anda mengedit skrip build CMake, seperti berikut:

    • Penyorotan sintaks dan pelengkapan kode: Kini IDE menandai dan menyarankan pelengkapan kode untuk perintah CMake yang umum. Selain itu, Anda dapat membuka file dengan mengkliknya sambil menekan tombol Control (Command di Mac).
    • Pemformatan ulang kode: Sekarang Anda dapat menggunakan opsi pemformatan ulang kode IntelliJ untuk menerapkan gaya kode ke skrip build CMake.
    • Pemfaktoran ulang yang aman: Kini fitur pemfaktoran ulang bawaan IDE juga memeriksa apakah Anda mengganti nama atau menghapus file yang dirujuk di skrip build CMake.

    Saat menggunakan jendela Project di Android Studio versi sebelumnya, Anda hanya dapat membuka dan memeriksa file header yang termasuk dalam library yang Anda build dari project lokal. Dengan rilis ini, sekarang Anda juga dapat melihat dan memeriksa file header yang disertakan dengan dependensi library C/C++ eksternal yang Anda impor ke dalam project aplikasi.

    Jika Anda sudah memasukkan kode dan library C/C++ dalam project, buka jendela Project di sebelah kiri IDE dengan memilih View > Tool Windows > Project dari menu utama, lalu pilih Android dari menu drop-down. Pada direktori cpp, semua header yang ada dalam cakupan project aplikasi Anda akan diatur di node include untuk setiap dependensi library C/C++ lokal, seperti ditunjukkan di bawah ini.

    Native multidex diaktifkan secara default

    Android Studio versi sebelumnya mengaktifkan native multidex saat men-deploy versi debug sebuah aplikasi ke perangkat yang menjalankan Android API level 21 atau lebih tinggi. Sekarang, baik Anda men-deploy ke perangkat atau mem-build APK untuk rilis, plugin Android untuk Gradle akan mengaktifkan native multidex untuk semua modul yang menetapkan minSdkVersion=21 atau yang lebih tinggi.

    AAPT2 dipindahkan ke repositori Maven Google

    Mulai Android Studio 3.2, sumber untuk AAPT2 (Android Asset Packaging Tool 2) adalah repositori Maven Google.

    Untuk menggunakan AAPT2, pastikan Anda memiliki dependensi google() dalam file build.gradle, seperti ditunjukkan di sini:

          buildscript {
              repositories {
                  google() // here
                  jcenter()
              }
              dependencies {
                  classpath 'com.android.tools.build:gradle:3.2.0'
              }
          } allprojects {
              repositories {
                  google() // and here
                  jcenter()
          }
        

    AAPT2 versi baru ini memperbaiki banyak masalah, termasuk penanganan karakter non-ASCII yang lebih baik di Windows.

    Penghapusan konfigurasi sesuai permintaan

    Preferensi Configure on demand telah dihapus dari Android Studio.

    Android Studio tidak lagi meneruskan argumen --configure-on-demand ke Gradle.

    ADB Connection Assistant

    ADB Connection Assistant yang baru menyediakan petunjuk langkah demi langkah untuk membantu Anda menyiapkan dan menggunakan perangkat melalui koneksi Android Debug Bridge (ADB).

    Untuk memulai asisten ini, pilih Tools > Connection Assistant.

    ADB Connection Assistant menyediakan petunjuk, kontrol sesuai konteks, dan daftar perangkat yang terhubung dalam serangkaian halaman di panel Assistant.

    Penyempurnaan emulator

    Sekarang Anda dapat menyimpan serta memuat snapshot AVD (perangkat virtual Android) kapan saja di Android Emulator, sehingga Anda dapat mengembalikan perangkat emulasi ke kondisi yang diketahui untuk pengujian dengan cepat dan mudah. Saat mengedit AVD menggunakan AVD Manager, Anda dapat menentukan snapshot AVD yang akan dimuat saat AVD dimulai.

    Sekarang kontrol untuk menyimpan, memuat, dan mengelola snapshot AVD tersedia dari tab Snapshot di jendela Extended controls pada emulator.

    Untuk mengetahui detailnya, lihat Snapshot.

    Untuk mengetahui informasi tambahan tentang hal-hal yang baru dan berubah di Emulator, lihat catatan rilis Emulator.

    3.1 (Maret 2018)

    Android Studio 3.1.0 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

    3.1.4 (Agustus 2018)

    Update untuk Android Studio 3.1 ini menyertakan perubahan dan perbaikan berikut:

    • Versi paket Kotlin saat ini adalah 1.2.50.
    • Project baru dibuat dengan kotlin-stdlib-jdk* artifacts, bukan dengan artefak kotlin-stdlib-jre* yang sudah tidak digunakan lagi.
    • Penguraian R8 untuk aturan ProGuard telah disempurnakan.
    • Bug berikut telah diperbaiki:
      • Gagal saat mencoba menjalankan class Kotlin Main dengan error: "Error: Could not find or load main class..."
      • R8 memasuki loop tanpa batas saat melakukan pengoptimalan tertentu.
      • Penggunaan perintah Rerun failed tests di jendela Run terkadang secara keliru menampilkan pesan "No tests were found".
      • D8 tidak menangani instance invoke-virtual dengan benar, sehingga menyebabkan error dengan VerifyError: invoke-super/virtual can't be used on private method
      • Kompilator Data Binding bergantung pada versi com.android.tools:annotations yang lama. Kini kompilator ini menggunakan anotasi alat dari project dasar jika tersedia.
      • Android Studio mengalami error saat transisi fragmen jika menggunakan profiler.
      • Debugger tidak berfungsi saat men-debug tata letak yang memiliki kotak teks.
      • D8 gagal membaca beberapa file ZIP dengan karakter khusus.

    3.1.3 (Juni 2018)

    Update untuk Android Studio 3.1 ini menyertakan perbaikan bug berikut:

    • Kebocoran memori menyebabkan Android Studio menjadi lambat dan tidak responsif setelah Anda menggunakan Layout Editor. Update ini menyertakan perbaikan untuk sebagian besar masalah tersebut. Kami berencana untuk segera merilis update lain guna mengatasi kebocoran memori tambahan.
    • Beberapa aplikasi yang di-build dengan D8 mengalami error pada sebagian tablet Verizon Ellipsis.
    • Penginstalan aplikasi yang di-build dengan D8 gagal disertai error INSTALL_FAILED_DEXOPT pada perangkat yang menjalankan Android 5.0 atau 5.1 (API level 21 atau 22).
    • Beberapa aplikasi yang menggunakan library OkHttp dan di-build dengan D8 mengalami error pada perangkat yang menjalankan Android 4.4 (API level 19).
    • Terkadang Android Studio gagal dimulai, dengan pesan ProcessCanceledException saat inisialisasi class untuk com.intellij.psi.jsp.JspElementType.

    3.1.2 (April 2018)

    Update untuk Android Studio 3.1 ini menyertakan perbaikan bug berikut:

    • Dalam beberapa kasus, terjadi hang selama waktu yang tidak tentu saat keluar dari Android Studio.
    • Jika Instant Run diaktifkan, build yang dikonfigurasi dengan set sumber gagal dengan pesan berikut:

      "The SourceSet name is not recognized by the Android Gradle Plugin."

    • Jika Instan Run diaktifkan, build project Kotlin baru akan gagal saat dipicu oleh perintah Run.
    • Saat mengedit file build.gradle, terkadang ada penundaan yang cukup terasa antara mengetik karakter hingga karakter muncul di layar.
    • Dalam beberapa project dengan modul atau dependensi eksternal yang berjumlah besar, terjadi kegagalan build saat proses dexing disertai pesan error berikut:

      "RejectedExecutionException: Thread limit exceeded replacing blocked worker"

    • Komputasi daftar DEX utama D8 tidak memperhitungkan sebagian pemanggilan reflektif.

    Update ini juga menyertakan perubahan yang membuat pemeriksaan lint dari Gradle menjadi jauh lebih cepat dalam beberapa skenario.

    3.1.1 (April 2018)

    Update untuk Android Studio 3.1 ini menyertakan perbaikan bug berikut:

    • Dalam beberapa kasus, saat project yang dibuat di Android Studio 3.0 dibuka untuk pertama kalinya di Android Studio 3.1, tugas Gradle-aware Make akan dihapus dari area Before launch pada Run/Debug Configurations. Hasilnya, project tersebut tidak di-build saat tombol Run atau Debug diklik, yang kemudian menyebabkan kegagalan seperti men-deploy APK yang salah dan error saat menggunakan Instant Run.

      Untuk mengatasi masalah ini, Android Studio 3.1.1 menambahkan tugas Gradle-aware Make ke konfigurasi peluncuran untuk project yang tidak memiliki entri ini. Modifikasi ini terjadi setelah sinkronisasi Gradle pertama ketika project dimuat.

    • Debugger mengalami error saat men-debug tata letak yang memiliki kotak teks jika pembuatan profil lanjutan diaktifkan.
    • Android Studio berhenti merespons setelah Anda mengklik Build Variants.
    • File AAR (Android archive) diekstrak dua kali, sekali saat proses sinkronisasi Gradle dan sekali saat proses build Gradle.
    • Elemen tidak ditemukan pada beberapa aset vektor drawable yang diimpor dari file SVG.
    • Peringatan mengenai penghentian konfigurasi dependensicompile telah diperbarui dengan panduan konfigurasi implementation dan api yang lebih baik. Untuk mengetahui detail terkait pengalihan dari penggunaan konfigurasi compile, lihat dokumentasi untuk konfigurasi dependensi baru.

    Coding/IDE

    IntelliJ 2017.3.3

    Android Studio IDE inti telah diupdate dengan penyempurnaan dari IntelliJ IDEA melalui rilis 2017.3.3. Penyempurnaan ini mencakup analisis alur kontrol yang lebih baik untuk koleksi dan string, peningkatan inferensi nullability, berbagai perbaikan cepat yang baru, serta masih banyak lagi.

    Untuk mengetahui detailnya, lihat catatan rilis JetBrains untuk IntelliJ IDEA versi 2017.2 dan 2017.3, serta catatan rilis JetBrains untuk update perbaikan bug.

    Penyempurnaan pengeditan SQL dengan Room

    Saat menggunakan library database Room, Anda dapat memanfaatkan beberapa peningkatan pada pengeditan SQL:

    • Pelengkapan kode dalam Query dapat mengidentifikasi tabel (entity), kolom, parameter kueri, alias, gabungan, sub-kueri, dan klausa WITH SQL.
    • Penyorotan sintaks SQL kini sudah berfungsi.
    • Anda dapat mengklik kanan nama tabel dalam SQL dan mengganti namanya, kemudian kode Java atau Kotlin yang sesuai (termasuk, misalnya, jenis pengembalian kueri) juga akan ditulis ulang. Penggantian nama ini berfungsi secara dua arah, sehingga mengganti nama class atau field Java akan menulis ulang kode SQL yang sesuai.
    • Penggunaan SQL akan ditampilkan saat menggunakan Find usages (klik kanan dan pilih Find usages dari menu konteks).
    • Untuk melihat deklarasi entitas SQL dalam kode Java atau Kotlin, tahan tombol Control (Command di Mac) sambil mengklik entitas.

    Untuk mengetahui informasi tentang cara menggunakan SQL dengan Room, lihat Menyimpan data di database lokal menggunakan Room.

    Update untuk data binding

    Update ini menyertakan beberapa penyempurnaan untuk data binding:

    • Sekarang Anda dapat menggunakan objek LiveData sebagai kolom yang dapat diobservasi dalam ekspresi data binding. Class ViewDataBinding sekarang menyertakan metode setLifecycle() baru yang digunakan untuk mengamati objek LiveData.

    • Class ObservableField sekarang dapat menerima objek Observable lain di konstruktornya.

    • Anda dapat melihat pratinjau compiler inkremental baru untuk class data binding. Guna mengetahui detail tentang kompilator baru ini serta petunjuk untuk mengaktifkannya, lihat Kompilator Data Binding V2.

      Kegunaan kompilator baru ini meliputi:

      • Class ViewBinding dihasilkan oleh Plugin Android untuk Gradle sebelum compiler Java.

      • Library mempertahankan class binding yang dihasilkan saat aplikasi dikompilasi, dan tidak mengulangi proses tersebut berkali-kali. Hal ini dapat meningkatkan performa secara signifikan untuk project multi-modul.

    Kompilator dan Gradle

    D8 merupakan kompilator DEX default

    Kompilator D8 sekarang digunakan secara default untuk menghasilkan bytecode DEX.

    Kompilator DEX baru ini memiliki beberapa kegunaan, di antaranya:

    • Proses dexing yang lebih cepat
    • Penggunaan memori yang lebih rendah
    • Pembuatan kode telah disempurnakan (alokasi register yang lebih baik, tabel string yang lebih canggih)
    • Pengalaman proses debug yang lebih baik saat meninjau kode

    Anda tidak perlu mengubah apa pun pada kode atau alur kerja pengembangan untuk mendapatkan manfaat ini, kecuali sebelumnya Anda menonaktifkan kompilator D8 secara manual. Jika Anda menetapkan android.enableD8 ke false dalam gradle.properties, hapus tanda tersebut atau tetapkan ke true:

    android.enableD8=true
        

    Untuk mengetahui detailnya, lihat Compiler DEX baru.

    Desugaring inkremental

    Untuk project yang menggunakan fitur bahasa Java 8, desugaring inkremental diaktifkan secara default, sehingga dapat mengefisienkan waktu build.

    Desugaring mengonversi pintasan sintaksis menjadi bentuk yang dapat diproses oleh kompilator secara lebih efisien.

    Anda dapat menonaktifkan desugaring inkremental dengan menentukan hal berikut pada file gradle.properties project Anda:

    android.enableIncrementalDesugaring=false
        

    Jendela output telah disederhanakan

    Gradle Console telah diganti dengan jendela Build, yang memiliki tab Sync dan Build.

    Untuk mengetahui detail penggunaan jendela Build yang baru dan telah disederhanakan, lihat Memantau proses build.

    Pembaruan batch dan konkurensi pengindeksan

    Sinkronisasi Gradle dan proses pengindeksan IDE sekarang jauh lebih efisien, sehingga mengurangi waktu yang dihabiskan pada banyak operasi pengindeksan yang berlebihan.

    C++ dan LLDB

    Kami telah menerapkan banyak penyempurnaan performa dan kualitas dalam tahap coding, sinkronisasi, proses build, serta proses debug untuk pengembangan C++. Penyempurnaan ini meliputi:

    • Jika Anda mengerjakan project C++ yang besar, Anda akan melihat bahwa waktu yang dihabiskan untuk mem-build simbol telah jauh berkurang. Waktu sinkronisasi juga jauh berkurang untuk project besar.

    • Performa saat proses build dan sinkronisasi dengan CMake telah ditingkatkan melalui penggunaan ulang hasil cache yang lebih agresif.

    • Penambahan pemformat ("pretty printer") untuk struktur data C++ lainnya menjadikan output LLDB lebih mudah dibaca.

    • Sekarang LLDB hanya berfungsi dengan Android 4.1 (API level 16) dan yang lebih tinggi.

    Kotlin

    Kotlin telah diupgrade ke versi 1.2.30

    Android Studio 3.1 menyertakan Kotlin versi 1.2.30.

    Kini kode Kotlin dianalisis dengan pemeriksaan lint command line

    Kini menjalankan lint dari command line akan menganalisis class Kotlin.

    Untuk setiap project tempat lint akan dijalankan, repositori Maven Google harus disertakan dalam file build.gradle tingkat teratas. Repositori Maven sudah disertakan untuk project yang dibuat di Android Studio 3.0 dan yang lebih tinggi.

    Fitur performa

    Mengambil sampel proses C++ native dengan CPU Profiler

    CPU Profiler sekarang menyertakan konfigurasi default untuk merekam aktivitas dengan sampel dari thread native aplikasi. Anda dapat menggunakan konfigurasi ini dengan men-deploy aplikasi ke perangkat yang menjalankan Android 8.0 (API level 26) atau lebih tinggi, lalu memilih Sampled (Native) dari menu drop-down konfigurasi perekaman pada CPU Profiler. Setelah itu, rekam dan periksa aktivitas seperti yang biasa Anda lakukan.

    Anda dapat mengubah setelan default, seperti interval pengambilan sampel, dengan membuat konfigurasi perekaman.

    Untuk beralih kembali ke pelacakan thread Java, pilih konfigurasi Sampel (Java) atau Instrumented (Java).

    Memfilter aktivitas CPU, hasil alokasi memori, dan heap dump

    CPU Profiler dan Memory Profiler menyertakan fitur penelusuran yang memungkinkan Anda memfilter hasil dari perekaman aktivitas metode, alokasi memori, atau heap dump.

    Untuk melakukan penelusuran, klik Filter di pojok kanan atas panel, ketik kueri, lalu tekan Enter.

    Tips: Anda juga dapat membuka kolom penelusuran dengan menekan Control + F (Command + F di Mac).

    Pada tab Flame Chart di CPU Profiler, stack panggilan dengan metode yang berkaitan dengan kueri penelusuran Anda akan ditandai dan dipindahkan ke sisi kiri diagram.

    Untuk mengetahui informasi selengkapnya mengenai pemfilteran berdasarkan metode, class, atau nama paket, lihat Merekam dan memeriksa aktivitas metode.

    Tab Request di Network Profiler

    Sekarang Network Profiler dilengkapi dengan tab Request yang menampilkan detail tentang permintaan jaringan selama linimasa yang dipilih. Dalam versi sebelumnya, Network Profiler hanya memberikan informasi tentang respons jaringan.

    Thread View di Network Profiler

    Setelah memilih bagian linimasa di Network Profiler, Anda dapat memilih salah satu tab berikut untuk melihat detail selengkapnya tentang aktivitas jaringan selama jangka waktu tersebut:

    • Connection View: Memberikan informasi yang sama dengan versi Android Studio sebelumnya, yaitu mencantumkan file yang telah dikirim atau diterima selama bagian linimasa yang dipilih di seluruh thread CPU aplikasi Anda. Untuk setiap permintaan, Anda dapat memeriksa ukuran, jenis, status, dan durasi transmisi.
    • Thread View: Menampilkan aktivitas jaringan setiap thread CPU aplikasi Anda. Tampilan ini memungkinkan Anda memeriksa thread aplikasi yang menangani setiap permintaan jaringan.

    Layout Inspector

    Layout Inspector mendapatkan fitur-fitur baru, termasuk beberapa fungsi yang sebelumnya disediakan oleh alat Hierarchy Viewer dan Pixel Perfect yang tidak digunakan lagi:

    • Tombol zoom dan pintasan keyboard untuk menavigasi serta memeriksa tata letak
    • Overlay petak referensi
    • Kemampuan memuat gambar referensi dan menggunakannya sebagai overlay (berguna untuk membandingkan tata letak dengan tiruan UI)
    • Render subtree preview untuk memisahkan tampilan dalam tata letak yang kompleks

    Layout Editor

    Palette di Layout Editor telah mendapatkan banyak penyempurnaan:

    Anda dapat menggunakan perintah Convert view baru di Component tree atau editor desain untuk mengonversi tampilan atau tata letak menjadi jenis tampilan atau tata letak lain.

    Sekarang Anda dapat dengan mudah membuat batasan untuk item di dekat tampilan yang dipilih menggunakan tombol Create a connection baru pada pemeriksa tampilan di bagian atas jendela Attributes.

    Run dan Instant Run

    Perilaku opsi Use same selection for future launches pada dialog Select deployment target kini lebih konsisten. Jika opsi Use same selection diaktifkan, dialog Select deployment target hanya akan terbuka saat Anda pertama kali menggunakan perintah Run hingga perangkat yang dipilih tidak lagi terhubung.

    Saat menargetkan perangkat yang menjalankan Android 8.0 (API level 26) atau yang lebih tinggi, Instant Run dapat men-deploy perubahan pada resource tanpa menyebabkan aplikasi dimulai ulang. Hal ini dimungkinkan karena resource dimuat dalam APK terpisah.

    Emulator

    Untuk mengetahui detail terkait hal-hal yang baru dan berubah di emulator sejak Android Studio 3.0, lihat catatan rilis Android Emulator dari versi 27.0.2 hingga versi 27.1.12.

    Beberapa peningkatan besar antara lain:

    • Snapshot Quick Boot untuk menyimpan status emulator dan memulai secara lebih cepat, dengan kemampuan untuk menggunakan perintah Save now guna menyimpan status mulai kustom.
    • Layar emulator tanpa jendela.
    • Image sistem untuk Android 8.0 (API level 26), Android 8.1 (API level 27), dan Android P Pratinjau Developer.

    Penyempurnaan antarmuka pengguna dan pengalaman pengguna

    Lebih banyak tooltip, pintasan keyboard, dan pesan yang membantu

    Kami telah menambahkan tooltip dan overlay pesan yang membantu pada banyak tempat di Android Studio.

    Guna melihat pintasan keyboard untuk berbagai perintah, cukup tahan kursor mouse di atas tombol hingga tooltip muncul.

    Menu Tools > Android telah dihapus

    Menu Tools > Android telah dihapus. Perintah yang sebelumnya ada di menu ini telah dipindahkan.

    • Banyak perintah yang dipindahkan langsung ke menu Tools.
    • Perintah Sync project with gradle files dipindahkan ke menu File.
    • Perintah Device Monitor telah dihapus, seperti dijelaskan di bawah.

    Device Monitor tersedia dari command line

    Di Android Studio 3.1, peran Device Monitor tidak sebesar sebelumnya. Dalam banyak kasus, fungsi yang tersedia melalui Device Monitor kini disediakan oleh fitur-fitur baru yang lebih baik.

    Lihat dokumentasi Device Monitor untuk mendapatkan petunjuk cara memanggil Device Monitor dari command line dan untuk mengetahui detail terkait alat yang tersedia melalui Device Monitor.

    3.0 (Oktober 2017)

    Android Studio 3.0.0 merupakan rilis utama yang menyertakan berbagai penyempurnaan dan fitur baru.

    Pengguna macOS: Jika mengupdate Android Studio versi lama, Anda mungkin melihat dialog error update yang bertuliskan "Some conflicts were found in the installation area." Abaikan error ini dan klik Cancel untuk melanjutkan penginstalan.

    3.0.1 (November 2017)

    Ini merupakan update minor untuk Android Studio 3.0 yang menyertakan perbaikan bug umum dan penyempurnaan performa.

    Plugin Android untuk Gradle 3.0.0

    Plugin Android untuk Gradle yang baru menyertakan berbagai penyempurnaan dan fitur baru, terutama peningkatan performa build untuk project yang memiliki banyak modul. Saat menggunakan plugin baru dengan project-project besar tersebut, Anda akan merasakan perubahan berikut:

    • Waktu konfigurasi build menjadi lebih cepat karena adanya resolusi dependensi baru yang tertunda.
    • Resolusi dependensi berdasarkan varian hanya dijalankan untuk project dan varian yang sedang Anda build.
    • Waktu build inkremental yang lebih cepat saat menerapkan perubahan sederhana pada kode atau resource.

    Versi ini juga menyertakan hal-hal berikut:

    Untuk mengetahui informasi selengkapnya mengenai hal-hal yang berubah, lihat catatan rilis Plugin Android untuk Gradle.

    Jika Anda sudah siap melakukan upgrade ke plugin yang baru, lihat Bermigrasi ke Plugin Android untuk Gradle 3.0.0.

    Dukungan Kotlin

    Seperti yang diumumkan di Google I/O 2017, bahasa pemrograman Kotlin kini secara resmi didukung di Android. Jadi, dengan rilis ini, Android Studio menyertakan dukungan bahasa Kotlin untuk pengembangan Android.

    Anda dapat menyertakan Kotlin ke project Anda dengan mengonversi file Java menjadi Kotlin (klik Code > Convert Java File to Kotlin File) atau dengan membuat project baru yang mendukung Kotlin melalui wizard New Project.

    Untuk memulai, baca cara menambahkan Kotlin ke project Anda.

    Dukungan fitur bahasa Java 8

    Kini Anda dapat menggunakan fitur bahasa Java 8 tertentu dan memanfaatkan library yang di-build dengan Java 8. Jack tidak lagi diperlukan, dan Anda harus menonaktifkan Jack terlebih dahulu untuk menggunakan dukungan Java 8 yang telah disempurnakan yang diintegrasikan ke dalam toolchain default.

    Untuk memperbarui project Anda agar mendukung toolchain bahasa Java 8 yang baru, ubah Source Compatibility dan Target Compatibility menjadi 1.8 pada dialog Project Structure (klik File > Project Structure). Untuk mempelajari lebih lanjut, baca cara menggunakan fitur bahasa Java 8.

    Android Profiler

    Android Profiler baru menggantikan fitur Android Monitor dan menyediakan serangkaian fitur baru untuk mengukur penggunaan CPU, memori, serta jaringan aplikasi Anda secara real time. Anda dapat melakukan pelacakan metode berbasis sampel untuk mengukur waktu eksekusi kode, merekam heap dump, melihat alokasi memori, dan memeriksa detail file yang ditransmisikan melalui jaringan.

    Untuk membukanya, klik View > Tool Windows > Android Profiler (atau klik Android Profiler di toolbar).

    Linimasa peristiwa di bagian atas jendela ini menunjukkan peristiwa sentuhan, penekanan tombol, dan perubahan aktivitas sehingga memberikan Anda lebih banyak konteks untuk memahami peristiwa performa lainnya di linimasa.

    Dari linimasa ringkasan Android Profiler, klik linimasa CPU, MEMORY, atau NETWORK untuk mengakses alat profiler yang sesuai.

    CPU Profiler

    CPU Profiler membantu Anda menganalisis penggunaan thread CPU oleh aplikasi dengan memicu sampel atau aktivitas CPU terinstrumentasi. Kemudian, Anda dapat memecahkan masalah performa CPU menggunakan berbagai tampilan data dan filter.

    Untuk mengetahui informasi selengkapnya, lihat panduan CPU Profiler.

    Memory Profiler

    Memory Profiler membantu Anda mengidentifikasi kebocoran memori dan churn memori yang dapat menyebabkan aplikasi tersendat, berhenti merespons, dan bahkan tidak bekerja. Komponen ini menampilkan grafik realtime atas penggunaan memori oleh aplikasi Anda, memungkinkan Anda merekam heap dump, memaksa pembersihan sampah memori, dan melacak alokasi memori.

    Untuk mengetahui informasi selengkapnya, lihat panduan Memory Profiler.

    Network Profiler

    Network Profiler memungkinkan Anda memantau aktivitas jaringan aplikasi, memeriksa payload setiap permintaan jaringan, dan merujuk kembali ke kode yang menghasilkan permintaan jaringan.

    Untuk mengetahui informasi selengkapnya, lihat panduan Network Profiler.

    Pembuatan profil dan proses debug APK

    Android Studio kini memungkinkan Anda membuat profil dan men-debug APK mana pun tanpa harus mem-build-nya dari project Android Studio, dengan syarat APK dibuat untuk mengaktifkan proses debug dan Anda memiliki akses ke simbol debug dan file sumber.

    Untuk memulai, klik Profile or debug APK dari layar Selamat Datang Android Studio. Atau, jika Anda sudah membuka project, klik File > Profile or debug APK dari panel menu. Ini akan menampilkan file APK yang belum dipaketkan, tetapi tidak mendekompilasi kode. Jadi, untuk menambahkan titik henti sementara dan melihat pelacakan tumpukan dengan benar, Anda harus melampirkan file sumber Java dan simbol debug native.

    Untuk mengetahui informasi selengkapnya, lihat Membuat Profil dan Men-debug APK yang Sudah Di-build Sebelumnya.

    Device File Explorer

    Device File Explorer baru memungkinkan Anda memeriksa sistem file perangkat yang terhubung, serta mentransfer file antara perangkat dan komputer. Fitur ini menggantikan fitur sistem file yang ada di DDMS.

    Untuk membukanya, klik View > Tool Windows > Device File Explorer.

    Untuk mengetahui informasi selengkapnya, lihat panduan Device File Explorer.

    Dukungan Aplikasi Instan

    Dukungan baru untuk Aplikasi Instan Android memungkinkan Anda membuat Aplikasi Instan dalam project menggunakan dua jenis modul baru: modul Instant App dan modul Feature (keduanya mengharuskan Anda menginstal Instant Apps Development SDK).

    Android Studio juga menyertakan tindakan pengoptimalan modularisasi baru guna membantu Anda menambahkan dukungan untuk Aplikasi Instan dalam project yang ada. Misalnya, jika Anda ingin memfaktorkan ulang project untuk menempatkan beberapa class dalam modul fitur Instant App, pilih class tersebut di jendela Project, lalu klik Refactor > Modularize. Pada dialog yang muncul, pilih modul tujuan class, lalu klik OK.

    Jika sudah siap menguji Aplikasi Instan, Anda dapat mem-build dan menjalankan modul Instant App pada perangkat yang terhubung dengan menentukan URL Aplikasi Instan di dalam opsi jalankan peluncuran konfigurasi: Pilih Run > Edit Configurations, pilih modul Instant App Anda, lalu tetapkan URL di bagian Launch Options.

    Untuk mengetahui informasi selengkapnya, lihat Aplikasi Instan Android.

    Modul Android Things

    Template Android Things baru di wizard New Project dan New Module dapat membantu Anda memulai pengembangan untuk perangkat IoT dengan teknologi Android.

    Untuk mengetahui informasi selengkapnya, lihat cara membuat project Android Things.

    Wizard Ikon Adaptif

    Image Asset Studio kini mendukung vektor drawable dan memungkinkan Anda membuat ikon peluncur adaptif untuk Android 8.0 sekaligus membuat ikon tradisional (ikon "Legacy") untuk perangkat lama.

    Untuk memulai, klik kanan folder res di project Anda, lalu klik New > Image Asset. Pada jendela Asset Studio, pilih Launcher Icons (Adaptive and Legacy) sebagai jenis ikon.

    Untuk mengetahui informasi selengkapnya, baca Ikon Adaptif.

    Dukungan untuk resource font

    Untuk mendukung resource font baru di Android 8.0, Android Studio menyertakan pemilih resource font yang membantu memaketkan font ke dalam aplikasi Anda atau mengonfigurasi project agar mendownload font di perangkat (jika tersedia). Layout Editor juga dapat menampilkan pratinjau font di tata letak Anda.

    Untuk menggunakan font yang dapat didownload, pastikan perangkat atau emulator menjalankan Layanan Google Play v11.2.63 atau yang lebih baru. Untuk mengetahui informasi selengkapnya, baca Font yang Dapat Didownload.

    Asisten Firebase App Indexing

    Firebase Assistant telah diperbarui dengan tutorial baru untuk menguji App Indexing. Untuk membuka Asisten ini, pilih Tools > Firebase. Kemudian pilih App Indexing > Test App Indexing.

    Tutorial ini menyertakan tombol baru untuk menguji pengindeksan konten publik dan pribadi Anda:

    • Pada langkah 2, klik Preview search results untuk memverifikasi bahwa URL Anda muncul dalam hasil Google Penelusuran.
    • Pada langkah 3, klik Check for errors untuk memverifikasi bahwa objek yang dapat diindeks di aplikasi Anda telah ditambahkan ke indeks konten pribadi.

    App Links Assistant telah diupdate dengan kemampuan baru berikut:

    • Menambahkan pengujian URL untuk setiap pemetaan URL guna memastikan filter intent Anda menangani URL asli.

      Anda juga dapat menentukan pengujian URL ini secara manual menggunakan tag <tools:validation> yang dijelaskan di bawah.

    • Membuat file Digital Asset Links dengan entri objek yang sesuai untuk mendukung Google Smart Lock, dan menambahkan tag asset_statements <meta-data> yang sesuai ke file manifes Anda.

    Validator intent-filter URL

    Android Studio kini mendukung tag khusus di file manifes yang memungkinkan Anda menguji URL filter intent. Ini adalah tag yang sama dengan yang dapat dibuat App Links Assistant untuk Anda.

    Guna mendeklarasikan URL pengujian untuk filter intent, tambahkan elemen <tools:validation> beserta elemen <intent-filter> yang sesuai. Contoh:

    <activity ...>
            <intent-filter>
                ...
            </intent-filter>
            <tools:validation testUrl="https://www.example.com/recipe/1138" />
        </activity>
        

    Pastikan Anda juga menyertakan xmlns:tools="http://schemas.android.com/tools" dalam tag <manifest>.

    Jika salah satu URL pengujian tidak memenuhi definisi filter intent, error lint akan muncul. Error seperti ini masih memungkinkan Anda mem-build varian debug, tetapi akan merusak build rilis Anda.

    Layout Editor

    Layout Editor telah diperbarui dengan sejumlah penyempurnaan, di antaranya:

    • Tata letak dan ikon toolbar baru.
    • Tata letak baru di component tree.
    • Penyisipan tampilan tarik lalu lepas telah disempurnakan.
    • Panel error baru di bawah editor, yang menunjukkan semua masalah dengan saran perbaikan (jika ada).
    • Berbagai penyempurnaan UI untuk proses build dengan ConstraintLayout, termasuk:
      • Dukungan baru untuk membuat barrier.
      • Dukungan baru untuk membuat grup: Di toolbar, pilih Guidelines > Add Group (memerlukan ConstraintLayout 1.1.0 beta 2 atau yang lebih tinggi)
      • UI baru untuk membuat chain: Pilih beberapa tampilan, lalu klik kanan dan pilih Chain.

    Layout Inspector

    Layout Inspector menyertakan penyempurnaan untuk memudahkan men-debug masalah dengan tata letak aplikasi Anda, termasuk mengelompokkan properti ke dalam kategori umum dan fungsi penelusuran baru di panel View Tree dan Properties.

    Penganalisis APK

    Sekarang, Anda dapat menggunakan Penganalisis APK dari command line dengan alat apkanalyzer.

    Penganalisis APK juga telah diupdate dengan penyempurnaan berikut:

    • Untuk APK yang di-build dengan ProGuard, Anda dapat memuat file pemetaan ProGuard yang menambahkan berbagai kemampuan ke DEX viewer, termasuk:
      • Node yang dicetak tebal untuk menunjukkan bahwa node tidak boleh dihapus ketika menyingkatkan kode.
      • Tombol untuk menunjukkan node yang dihapus selama proses penyusutan.
      • Tombol yang memulihkan nama asli node dalam tampilan hierarki yang disamarkan oleh ProGuard.
    • DEX Viewer kini menampilkan estimasi dampak ukuran setiap paket, class, dan metode.
    • Opsi pemfilteran baru di bagian atas untuk menampilkan dan menyembunyikan field dan metode.
    • Dalam tampilan hierarki, node berupa referensi yang tidak didefinisikan dalam file DEX akan muncul dalam cetak miring.

    Untuk mengetahui informasi selengkapnya, lihat Menganalisis Build dengan Penganalisis APK.

    Pratinjau kompilator DEX D8

    Android Studio 3.0 menyertakan kompilator DEX baru yang opsional bernama D8. Nantinya compiler ini akan menggantikan compiler DX, tetapi sekarang Anda dapat memilih untuk menggunakan compiler D8 yang baru.

    Kompilasi DEX secara langsung akan memengaruhi waktu build aplikasi, ukuran file .dex, dan performa runtime. Jika compiler D8 yang baru dibandingkan dengan compiler DX saat ini, D8 akan mengompilasi lebih cepat dan menghasilkan file .dex yang lebih kecil, dengan performa runtime aplikasi yang sama atau lebih baik.

    Untuk mencobanya, tetapkan baris berikut dalam file gradle.properties project Anda:

    android.enableD8=true
        

    Untuk mengetahui informasi selengkapnya, lihat postingan blog tentang compiler D8.

    Repositori Maven Google

    Android Studio kini menggunakan Repositori Maven Google secara default dan tidak bergantung pada Android SDK Manager untuk mendapatkan update bagi Android Support Library, Layanan Google Play, Firebase, serta dependensi lainnya. Hal ini memudahkan Anda memperbarui library, terutama saat menggunakan sistem continuous integration (CI).

    Semua project baru sekarang menyertakan repositori Maven Google secara default. Untuk mengupdate project yang ada, tambahkan google() dalam blok repositories file build.gradle tingkat atas:

    allprojects {
            repositories {
                google()
            }
        }
        

    Pelajari repositori Maven Google lebih lanjut di sini.

    Perubahan lainnya

    • Proses debug native dengan Android Studio tidak lagi mendukung Windows 32 bit. Kami telah memutuskan untuk fokus pada platform lainnya karena sangat sedikit developer yang menggunakan platform ini. Jika Anda menggunakan Windows 32 bit dan berencana men-debug kode native, tetap gunakan Android Studio 2.3.
    • IDE dasar telah diupgrade ke IntelliJ 2017.1.2, yang menambahkan sejumlah fitur baru dari 2016.3 dan 2017.1, seperti pengoptimalan bahasa Java 8, petunjuk parameter, penyorotan semantik, titik henti sementara yang dapat ditarik, hasil penelusuran instan, dan masih banyak lagi.
    • Banyak pemeriksaan lint baru yang telah ditambahkan.
    • Lihat juga update Android Emulator terbaru.

    2.3 (Maret 2017)

    Android Studio 2.3.0 utamanya adalah rilis dengan perbaikan bug dan stabilitas, tetapi juga menyertakan sejumlah fitur baru.

    2.3.3 (Juni 2017)

    Ini adalah update minor yang menambahkan dukungan untuk Android O (API level 26).

    2.3.2 (April 2017)

    Ini adalah update minor Android Studio 2.3 untuk perubahan berikut:

    • AVD Manager diupdate agar mendukung Google Play di image sistem.
    • Perbaikan bug untuk build NDK saat menggunakan R14+ dari NDK.

    Lihat juga update terkait untuk Android Emulator 26.0.3.

    2.3.1 (April 2017)

    Ini adalah update minor untuk Android Studio 2.3 yang memperbaiki masalah saat beberapa perangkat fisik Android tidak berfungsi secara benar dengan Instant Run (lihat Masalah #235879).

    Baru

    • Android Studio sekarang dapat mengonversi file PNG, BMP, JPG, dan GIF statis menjadi format WebP. WebP adalah format file gambar dari Google yang memberikan kompresi lossy (seperti JPEG) serta transparansi (seperti PNG) tetapi dapat memberikan kompresi yang lebih baik daripada JPEG atau PNG. Untuk informasi selengkapnya, lihat Mengonversi gambar menjadi WebP di Android Studio.
    • App Links Assistant yang baru menyederhanakan proses penambahan Android App Links ke aplikasi Anda menjadi panduan langkah demi langkah. Android App Links adalah URL HTTP yang mengarahkan pengguna langsung ke konten tertentu dalam aplikasi Android Anda.
    • Layout Editor kini menyertakan dukungan untuk dua fitur ConstraintLayout baru:
      • Menentukan ukuran tampilan berdasarkan rasio tinggi lebar.
      • Membuat grup linear yang terisi, tersebar, dan berbobot dengan chain constraint.
      Untuk informasi selengkapnya, baca Membuat UI yang Responsif dengan ConstraintLayout.
    • Kini Layout Editor juga memungkinkan Anda membuat daftar atribut favorit sehingga Anda tidak perlu mengklik View all attributes untuk mengakses atribut yang paling sering digunakan.
    • Saat menambahkan ikon material menggunakan Dialog Vector Import (File > New > Vector Asset), sekarang Anda dapat memfilter daftar ikon yang tersedia berdasarkan kategori atau nama ikon. Untuk informasi selengkapnya, lihat Menambahkan ikon material.
    • Anotasi baru dan yang telah diupdate. Anotasi @RestrictTo baru untuk metode, class, dan paket memungkinkan Anda membatasi suatu API. Anotasi @VisibleForTesting yang telah diupdate sekarang memiliki argumen otherwise opsional yang memungkinkan Anda menentukan visibilitas suatu metode, atau membuatnya terlihat untuk pengujian. Lint menggunakan opsi otherwise untuk menerapkan visibilitas metode yang diinginkan.
    • Dukungan dasar pengukuran lint yang baru memungkinkan Anda menggunakan snapshot dari kumpulan peringatan pada project saat ini sebagai dasar pengukuran untuk peluncuran pemeriksaan di masa mendatang sehingga hanya masalah baru yang dilaporkan. Snapshot dasar pengukuran memungkinkan Anda memulai menggunakan lint guna menggagalkan build untuk masalah baru tanpa harus kembali dan mengatasi semua masalah yang ada terlebih dahulu.
    • Pemeriksaan lint baru, termasuk:
      • Pemeriksaan SDK_INT yang Tidak Digunakan Lagi: Android Studio menghapus kode pemeriksa versi SDK yang sudah tidak digunakan.
      • Validasi Objek Animator: Lint menganalisis kode Anda untuk memastikan bahwa ObjectAnimator memanggil metode dengan referensi yang valid dan tanda tangan yang benar serta memeriksa apakah metode tersebut telah diberi anotasi @Keep untuk mencegah ProGuard mengganti nama atau menghapusnya selama build rilis.
      • Salinan Dekorator Item yang Tidak Diperlukan: Versi lama library RecyclerView tidak menyertakan class dekorator pemisah, tetapi satu class disediakan sebagai sampel dalam demo dukungan. Versi terbaru library ini memiliki class dekorator pemisah. Lint akan mencari sampel lama dan menyarankan untuk menggantinya dengan yang baru.
      • Kebocoran WifiManager: Sebelum Android 7.0 (API level 24), inisialisasi WifiManager dengan Context.getSystemService() dapat menyebabkan kebocoran memori jika konteksnya bukan konteks aplikasi. Lint akan mencari inisialisasi tersebut, dan jika lint tidak dapat menentukan bahwa konteksnya adalah konteks aplikasi, Anda akan disarankan untuk menggunakan Context.getApplicationContext() guna mendapatkan konteks yang sesuai untuk inisialisasi.
      • Peningkatan Prefiks Resource: Pemeriksaan lint resourcePrefix yang ada memiliki banyak keterbatasan. Sekarang Anda dapat mengonfigurasi project dengan prefiks, misalnya android { resourcePrefix 'my_lib' }, dan lint akan memastikan bahwa semua resource Anda menggunakan prefiks ini. Anda dapat menggunakan variasi nama untuk gaya dan tema. Misalnya untuk prefiks my_lib, Anda dapat menamai tema dengan MyLibTheme, myLibAttr, my_lib_layout, dan sebagainya.
      • Beralih ke WebP: Pemeriksaan ini mengidentifikasi gambar dalam project Anda yang dapat dikonversi ke format WebP berdasarkan setelan minSdkVersion project. Quickfix terkait dapat otomatis mengonversi gambar, atau Anda dapat mengonversi gambar menjadi WebP secara manual.
      • WebP yang Tidak Aman: Jika project Anda sudah menyertakan gambar WebP, pemeriksaan ini akan menganalisis project untuk memastikan bahwa setelan minSdkVersion Anda cukup tinggi untuk mendukung gambar yang disertakan. Untuk informasi selengkapnya tentang dukungan WebP di Android dan Android Studio, lihat Browser apa saja yang mendukung WebP secara native? dan Membuat Gambar WebP Menggunakan Android Studio.

    Perubahan

    • Tombol terpisah untuk menerapkan perubahan dengan Instant Run: Setelah men-deploy aplikasi, sekarang Anda dapat mengklik Apply Changes untuk menerapkan perubahan inkremental dengan cepat ke aplikasi yang sedang berjalan menggunakan Instant Run. Tombol Run dan Debug selalu tersedia saat Anda ingin menerapkan perubahan dengan lancar dan memaksa aplikasi dimulai ulang.
      • Instant Run hanya didukung saat men-deploy aplikasi ke perangkat target yang menjalankan Android 5.0 (API level 21) atau yang lebih tinggi.
      • Instant Run tidak lagi dinonaktifkan untuk project yang ditautkan ke project native eksternal menggunakan CMake atau ndk-build. Namun, Anda hanya dapat menggunakan Instant Run untuk menerapkan perubahan inkremental ke kode Java, bukan kode native.
      • Cold swap (yang dapat Anda paksa untuk aplikasi yang sedang berjalan dengan mengklik Run ) sekarang lebih stabil. Memaksakan cold swap juga akan memperbaiki masalah saat perubahan pada UI notifikasi dan widget tidak diperbarui di perangkat target.
      • Menyertakan pengoptimalan yang mempercepat peluncuran aplikasi. Pengoptimalan ini dapat memengaruhi pembuatan profil, sehingga Anda harus menonaktifkan Instant Run sementara saat membuat profil aplikasi.
    • Tombol AVD Manager dan SDK Manager kini disertakan dalam Navigation Bar ramping serta di Toolbar lengkap. Untuk menggunakan Navigation Bar ramping, klik View untuk membuka menu View, lalu pastikan Navigation Bar dipilih dan Toolbar tidak dipilih.

    • Debugger "Hybrid" telah berganti nama menjadi debugger "Dual".
    • Pada dialog Run/Debug Configurations, di bagian Default di panel kiri, nama konfigurasi peluncuran berikut telah diganti tanpa mengubah perilakunya:
      • Nama JUnit telah diganti menjadi Android JUnit. Jika Anda memiliki project yang menggunakan konfigurasi peluncuran JUnit, konfigurasi tersebut akan diubah menjadi konfigurasi peluncuran Android JUnit saat Anda membuka project itu dengan Android Studio untuk pertama kalinya. Dialog akan muncul untuk memberi tahu Anda tentang penggantian nama tersebut.
      • Nama Android Tests telah diganti menjadi Android Instrumented Tests.
    • GPU Debugger telah dihapus dari Android Studio sejak versi 2.3. Versi open source terpisah untuk alat ini kini telah tersedia di GitHub.
    • Opsi Run/Debug tidak lagi tersedia saat Anda mengklik kanan skrip *.gradle build.
    • Sekarang semua template menggunakan ConstraintLayout sebagai layout default.
    • Palet Widget di Layout Editor telah didesain ulang.

    Rilis ini juga menyertakan sejumlah perbaikan bug. Lihat semua perbaikan bug di 2.3.0.

    Masalah umum: Beberapa produsen perangkat memblokir aplikasi agar tidak diluncurkan secara otomatis setelah diinstal di perangkat. Saat men-deploy aplikasi ke perangkat fisik dengan Android Studio 2.3, batasan ini akan mengubah perilaku Instant Run yang diinginkan dan menyebabkan error berikut: Error: Not found; no service started. Guna menghindari masalah ini, gunakan emulator atau aktifkan peluncuran otomatis untuk aplikasi Anda di setelan perangkat. Prosedur guna melakukan hal ini berbeda untuk setiap perangkat, jadi periksalah petunjuk yang disediakan oleh produsen. Misalnya, beberapa perangkat Asus yang terpengaruh harus mengizinkan aplikasi melalui Auto-start Manager. Untuk mempelajari masalah ini lebih lanjut, lihat Masalah #235879.

    2.2 (September 2016)

    2.2.3 (Desember 2016)

    Ini adalah update minor untuk Android Studio 2.2. Rilis ini menyertakan perbaikan bug yang difokuskan untuk gradle, IDE inti, dan lint.

    Perubahan utama pada build:

    • Rollback versi ProGuard. Karena masalah ketepatan yang ditemukan di ProGuard 5.3.1, kami kembali ke ProGuard 5.2.1. Kami telah bekerja sama dengan tim ProGuard untuk segera merilis perbaikan, dan kami berencana menggunakan ProGuard 5.3.2 pada Android Studio 2.3 Canary 3.
    • Perbaikan bug untuk aaptOptions IgnoreAssetsPattern tidak berfungsi sebagaimana mestinya (Masalah 224167)
    • Perbaikan bug download otomatis Gradle untuk library Constraint Layout (masalah 212128)
    • Perbaikan bug untuk compiler JDK8/Kotlin + masalah dx (masalah 227729)

    Lihat semua perbaikan bug di 2.2.3.

    2.2.2 (Oktober 2016)

    Ini adalah update minor untuk Android Studio 2.2. Rilis ini menyertakan sejumlah perubahan dan perbaikan bug kecil, termasuk:

    • Saat melaporkan masalah Instant Run melalui IDE, kini laporan juga menyertakan output logcat untuk peristiwa InstantRun. Untuk membantu kami menyempurnakan Instant Run, aktifkan logging tambahan dan laporkan masalah.
    • Sejumlah perbaikan kecil bug untuk Gradle.
    • Perbaikan untuk masalah pembuatan banyak APK.

    2.2.1 (Oktober 2016)

    Ini adalah update minor untuk Android Studio 2.2. Rilis ini menyertakan beberapa perbaikan bug dan fitur baru untuk mengaktifkan logging tambahan guna membantu kami memecahkan masalah Instant Run. Untuk membantu kami menyempurnakan Instant Run, aktifkan logging tambahan dan laporkan masalah.

    Baru

    • Layout Editor baru dengan alat yang dirancang khusus untuk mendukung ConstraintLayout.
    • Layout Inspector baru memungkinkan Anda memeriksa snapshot dari hierarki layout saat aplikasi Anda berjalan di emulator atau perangkat.
    • Jendela Assistant baru untuk membantu Anda mengintegrasikan layanan Firebase ke aplikasi.
    • Alat APK Analyzer baru agar Anda dapat memeriksa konten paket aplikasi.
    • Alat Espresso Test Recorder baru (saat ini dalam versi beta) untuk membantu Anda membuat pengujian UI dengan merekam interaksi Anda sendiri.
    • Cache build baru (saat ini masih eksperimental) untuk mempercepat performa build.
    • Update integrasi build C/C ++ dengan CMake dan ndk-build. Kompilasikan dan build kode native baru atau yang sudah ada ke dalam library yang dipaketkan di APK Anda, serta jalankan debug menggunakan lldb. Untuk project baru, Android Studio menggunakan CMake secara default, tetapi juga mendukung ndk-build untuk project yang sudah ada. Untuk mempelajari cara menyertakan kode native di aplikasi Android, baca Menambahkan Kode C dan C++ ke Project Anda. Untuk mempelajari cara men-debug kode native dengan lldb, lihat Men-debug Kode Native.
    • Samples Browser baru yang memudahkan Anda mencari kode contoh Android Google dari dalam Android Studio untuk memulai pengembangan aplikasi.
    • Merged Manifest Viewer baru untuk membantu Anda mendiagnosis penggabungan file manifes dengan dependensi aplikasi Anda di seluruh varian build project.
    • Jendela Run kini berisi pesan log untuk aplikasi yang sedang berjalan. Ingat bahwa Anda dapat mengonfigurasi tampilan logcat Monitor, tetapi tidak untuk jendela Run.
    • Fitur-fitur baru Android Emulator:
      • Penambahan Virtual Sensors baru dan kontrol Cellular > Signal Strength.
      • Penambahan opsi LTE ke kontrol Cellular > Network type.
      • Penambahan simulasi geser vertikal untuk scroll pada menu vertikal dengan roda mouse.
    • Fitur-fitur baru Run/Debug Configuration:
      • Tab Debugger pada template Android App dan Android Tests kini memiliki beberapa opsi baru untuk proses debug dengan LLDB.
      • Tab Profiling pada template Android App dan Android Tests kini memiliki opsi Capture GPU Commands untuk mengaktifkan pelacakan GPU. Anda dapat menampilkan aktivitas GPU di GPU Debugger (fitur beta).
      • Template Android Tests sekarang memiliki opsi Firebase Test Lab Device Matrix untuk Deployment Target.
      • Template Native Application sudah tidak digunakan lagi. Jika Anda menggunakan template ini dalam project, Android Studio akan otomatis mengonversinya menjadi template Android App.
      • Template Android Application telah berganti nama menjadi Android App.
    • Penyempurnaan fitur penginstalan, konfigurasi, performa, dan UI di GPU Debugger (saat ini dalam versi beta).
    • Android Studio kini dilengkapi dengan OpenJDK 8. Project-project lama masih menggunakan JDK yang ditentukan di File > Project Structure > SDK Location. Anda dapat beralih menggunakan paket JDK baru dengan mengklik File > Project Structure > SDK Location dan mencentang kotak Use embedded JDK.
    • Penambahan menu bantuan dan tombol baru di UI agar Anda dapat menemukan dokumentasi online dengan lebih mudah.

    Perubahan

    • Codebase IDE telah diperbarui dari IntelliJ 15 menjadi IntelliJ 2016.1
    • Kini Instant Run mengharuskan penginstalan SDK platform yang sesuai dengan level API perangkat target.
    • Instant Run akan otomatis dinonaktifkan jika pengguna menjalankan aplikasi dengan profil kerja atau sebagai pengguna sekunder.
    • Perbaikan berbagai masalah keandalan untuk Instant Run saat perubahan tidak di-deploy atau aplikasi tidak berfungsi:
      • Beberapa aset aplikasi tidak di-deploy untuk aplikasi yang sedang berjalan. (Bug: #213454 )
      • Aplikasi berhenti berfungsi saat pengguna melakukan transisi antara sesi Instant Run dan non-Instant Run sementara class Serializable tidak memiliki serialVersionUID yang ditentukan. (Bug: #209006)
      • Perubahan gaya tidak diterapkan dengan Instant Run. (Bug: #210851)
      • Sesi Instant Run tidak stabil dan menyebabkan error FileNotFoundException. (Bug: #213083)
      • Perubahan pada aset yang dapat digambar tidak diterapkan hingga proses build ulang secara penuh dilakukan untuk KitKat. (Bug: #21530)
      • Perubahan resource tidak diterapkan dengan Instant Run jika sourceSets kustom berisi jalur bertingkat. (Bug: #219145)
      • Hot swap dan warm swap tidak berfungsi jika class yang diubah berisi anotasi dengan nilai enum. (Bug: #209047)
      • Perubahan data anotasi tidak diterapkan dengan Instant Run. (Bug: #210089)
      • Instant Run tidak menerima perubahan kode jika Anda melakukan perubahan di luar IDE. (Bug: #213205)
      • Sesi Instant Run tidak stabil karena token keamanan tidak cocok. (Bug: #211989
      • Cold swap gagal untuk perangkat yang tidak mendukung run-as dengan baik. (Bug: #210875)
      • Aplikasi tidak berfungsi setelah instant run dimulai ulang. (Bug: #219744)
      • ClassNotFoundException terjadi saat beralih dari Instant Run ke Instant Debug. (Bug: #215805)
    • Peningkatan performa untuk Gradle sync dalam IDE, terutama untuk project besar.
    • Peningkatan efisiensi waktu build untuk build penuh dan inkremental dengan kode paket aplikasi yang baru.
    • Peningkatan performa dan fitur compiler Jack, termasuk dukungan untuk pemroses anotasi dan proses dexing. Untuk mempelajari lebih lanjut, baca catatan rilis plugin Android untuk Gradle 2.2.0.
    • Properti Scale AVD telah dihapus dari AVD Manager.
    • Opsi command line -port dan -ports Android Emulator kini melaporkan port serta nomor seri instance emulator yang digunakan, dan memperingatkan jika ada masalah dengan nilai yang diberikan.
    • Penyempurnaan dialog Create New Class dan template file yang sesuai. Catatan: Jika sebelumnya telah menyesuaikan template file AnnotationType, Class, Enum, Interface, atau Singleton, template Anda harus diubah agar sesuai dengan template yang baru atau Anda tidak akan dapat menggunakan kolom baru pada dialog Create New Class.
    • Penyempurnaan antarmuka pengguna Vector Asset Studio dan penambahan dukungan untuk file Adobe Photoshop Document (PSD).
    • Penyempurnaan antarmuka pengguna Image Asset Studio.
    • Penyempurnaan Resource Picker pada Theme Editor.
    • Kebocoran memori telah diperbaiki dan penggunaan memori secara keseluruhan di Android Studio telah dikurangi.
    • Penambahan tombol Background di SDK Manager sehingga Anda dapat kembali bekerja dan menginstal paket di latar belakang.
    • Penyempurnaan fitur Aksesibilitas, termasuk dukungan untuk pembaca layar dan navigasi keyboard.
    • Penyempurnaan Code Analysis meliputi pemeriksaan kualitas kode untuk penggunaan bahasa Java 8 dan peningkatan analisis lintas-file.
    • Beberapa ikon toolbar telah diubah.

    2.1 (April 2016)

    Perubahan utama dalam update ini menyediakan dukungan untuk pengembangan dengan Pratinjau Android N.

    2.1.3 (Agustus 2016)

    Update ini menambahkan kompatibilitas dengan Gradle 2.14.1, yang menyertakan penyempurnaan performa, fitur-fitur baru, dan perbaikan keamanan penting. Lihat Catatan rilis Gradle agar mengetahui detail selengkapnya.

    Secara default, project baru di Android Studio 2.1.3 menggunakan Gradle 2.14.1. Untuk project lama, IDE akan meminta Anda untuk mengupgrade ke Gradle 2.14.1 dan plugin Android untuk Gradle 2.1.3, yang diperlukan saat menggunakan Gradle 2.14.1 dan yang lebih tinggi.

    2.1.2 (Juni 2016)

    Update ini menyertakan sejumlah perubahan dan perbaikan bug kecil:

    • Update Instant Run dan perbaikan bug.
    • Penyempurnaan performa LLDB dan notifikasi error.
    • Perbaikan regresi pada update keamanan Android Studio 2.1.1 yang menyebabkan git rebase gagal.

    2.1.1 (Mei 2016)

    Update rilis keamanan.

    Platform Android N menambahkan dukungan untuk fitur bahasa Java 8, yang memerlukan compiler eksperimental baru bernama Jack. Versi terbaru Jack saat ini hanya didukung di Android Studio 2.1. Jadi, jika ingin menggunakan fitur bahasa Java 8, Anda harus menggunakan Android Studio 2.1 untuk mem-build aplikasi.

    Catatan: Instant Run akan dinonaktifkan jika Anda mengaktifkan compiler Jack karena saat ini keduanya tidak kompatibel.

    Meskipun Android Studio 2.1 saat ini sudah stabil, compiler Jack masih dalam tahap eksperimental dan Anda harus mengaktifkannya dengan properti jackOptions dalam file build.gradle.

    Selain perubahan untuk mendukung Pratinjau N, Android Studio 2.1 menyertakan perbaikan bug kecil dan penyempurnaan berikut:

    • Debugger C++ Java-aware sekarang diaktifkan secara default saat Anda menggunakan perangkat atau emulator dengan Android N dan memilih mode debugger Native (di tab Debugger untuk konfigurasi run/debug).

    Untuk penyempurnaan build lainnya, termasuk kompilasi Java inkremental dan proses dexing, update plugin Android untuk Gradle ke versi 2.1.0.

    2.0 (April 2016)

    Catatan: Jika Anda mengembangkan untuk N Developer Preview, gunakan Android Studio 2.1 Preview. Android Studio 2.0 tidak mendukung semua fitur yang diperlukan untuk menargetkan N Preview. Untuk mempelajari lebih lanjut, baca cara menyiapkan lingkungan developer dengan benar untuk N Preview.

    Instant Run:

    • Android Studio kini men-deploy clean build lebih cepat daripada sebelumnya. Selain itu, menerapkan perubahan kode inkremental pada emulator atau perangkat fisik kini berlangsung dengan sangat cepat. Tinjau perubahan tanpa men-deploy ulang build debug baru atau, dalam banyak kasus, tanpa memulai ulang aplikasi.
    • Dukungan Instant Run menerapkan perubahan berikut ke aplikasi yang sedang berjalan:
      • Perubahan pada implementasi metode instance yang ada atau metode statis
      • Perubahan pada resource aplikasi yang ada
      • Perubahan pada kode struktural, seperti tanda tangan metode atau kolom statis (memerlukan perangkat target yang menjalankan API level 21 atau lebih tinggi).
    • Baca dokumentasinya untuk mempelajari Instant Run lebih lanjut.

      Catatan: Instant Run hanya didukung jika Anda men-deploy varian build debug, menggunakan plugin Android untuk Gradle versi 2.0.0 atau lebih baru, dan mengonfigurasi file build.gradle tingkat modul pada aplikasi Anda untuk minSdkVersion 15 atau yang lebih tinggi. Untuk mendapatkan performa terbaik, konfigurasikan aplikasi Anda untuk minSdkVersion 21 atau yang lebih tinggi.

    Tambahan baru untuk Lint:

    • Pemeriksaan pernyataan switch menggunakan integer dengan anotasi @IntDef untuk memastikan semua konstanta ditangani. Untuk menambahkan pernyataan yang tidak ada dengan cepat, gunakan menu drop-down tindakan intent, lalu pilih Add Missing @IntDef Constants.
    • Flag untuk upaya penggunaan interpolasi string yang salah untuk memasukkan nomor versi di file build.gradle.
    • Flag untuk class anonim yang mengembangkan class Fragment.
    • Flag untuk kode native di lokasi yang tidak aman, seperti folder res/ dan asset/. Flag ini menyarankan agar kode native disimpan di folder libs/, yang kemudian dikemas dengan aman ke dalam folder data/app-lib/ aplikasi pada waktu penginstalan. AOSP: #169950
    • Flag untuk panggilan yang tidak aman ke Runtime.load() dan pemanggilan System.load(). AOSP: #179980
    • Temukan dan hapus resource yang tidak digunakan dengan memilih Refactor > Remove Unused Resources dari panel menu. Deteksi resource yang tidak digunakan saat ini hanya mendukung resource yang direferensikan oleh resource yang tidak digunakan, referensi dalam file mentah seperti referensi gambar .html, serta atribut tools:keep dan tools:discard yang digunakan oleh penyingkat resource Gradle, dengan mempertimbangkan kumpulan sumber tidak aktif (seperti resource yang digunakan dalam ragam build lainnya) dan penanganan impor kolom statis dengan benar.
    • Memeriksa apakah referensi API implisit didukung di semua platform yang ditargetkan oleh minSdkVersion.
    • Memberi flag penggunaan yang tidak benar dari RecyclerView dan Parcelable.
    • Pemeriksaan @IntDef, @IntRange, dan @Size sekarang juga memeriksa array dan vararg int.

    Penyempurnaan Lainnya:

    • Dioptimalkan untuk Android Emulator 2.0 yang lebih cepat dari sebelumnya, mendukung lebih banyak perangkat virtual, dan memiliki UI yang jauh lebih baik. Untuk mempelajari emulator baru ini lebih lanjut, baca catatan rilis SDK Tools.
    • Penyempurnaan untuk Android Virtual Device Manager:
      • Image sistem kini dikategorikan pada tab berikut: Recommended, x86, dan Other.
      • Di setelan lanjutan, Anda dapat mengaktifkan dukungan multi-core dan menentukan jumlah core yang dapat digunakan emulator.
      • Di setelan lanjutan, Anda dapat menentukan cara rendering grafis di emulator dengan memilih salah satu opsi berikut:
        • Hardware: menggunakan kartu grafis komputer Anda untuk proses rendering yang lebih cepat.
        • Software: menggunakan rendering berbasis software.
        • Auto: membiarkan emulator menentukan pilihan terbaik. Ini adalah setelan default.
    • Peningkatan efisiensi waktu pemaketan AAPT dengan menentukan target deploy sebelum aplikasi di-build. Hal ini memungkinkan Android Studio untuk secara efisien memaketkan resource yang diperlukan saja oleh perangkat yang ditentukan.
    • Penambahan integrasi Cloud Test Lab untuk menyediakan pengujian aplikasi sesuai permintaan dengan kenyamanan dan skalabilitas layanan cloud. Pelajari cara menggunakan Cloud Test Lab dengan Android Studio lebih lanjut.
    • Penambahan pratinjau GPU Debugger baru. Untuk aplikasi dengan grafik intensif, sekarang Anda dapat merujuk pada kode OpenGL ES secara visual untuk mengoptimalkan aplikasi atau game Anda.
    • Penambahan Pengujian Pengindeksan Aplikasi Google. Penambahan dukungan URL, pengindeksan aplikasi, dan fungsi penelusuran ke aplikasi untuk membantu mengarahkan lebih banyak traffic ke aplikasi Anda, menemukan konten aplikasi yang paling sering digunakan, dan menarik pengguna baru. Uji dan validasi URL di aplikasi Anda melalui Android Studio. Lihat Mendukung URL dan Pengindeksan Aplikasi di Android Studio.
    • Upgrade dari rilis terbaru IntelliJ 15, termasuk performa dan analisis kode yang lebih baik. Lihat Yang Baru di IntelliJ untuk penjelasan lengkap mengenai penyempurnaan dan fitur baru.
    • Pelengkapan otomatis editor XML kini menambahkan tanda kutip saat melengkapi atribut. Untuk memeriksa apakah opsi ini diaktifkan, buka dialog Setting atau Preferences, klik Editor > General > Smart Keys, lalu centang kotak di samping Add quotes for attribute value on attribute completion. Masalah: 195113
    • Editor XML sekarang mendukung pelengkapan kode untuk ungkapan data binding.

    Rilis Sebelumnya