Android Dev Summit, October 23-24: two days of technical content, directly from the Android team. Sign-up for livestream updates.

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 (di Mac, Android Studio > Check for updates).

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 Android Plugin untuk Gradle, lihat catatan rilis.

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 penyempurnaan 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 penyempurnaan 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() dapat gagal dengan keterangan NPE. Perbaikan untuk masalah ini akan disertakan dalam Android Studio 3.4.1 dan sudah tersedia di Versi pratinjau terbaru Android Studio 3.5. (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 di Windows dan Linux, atau Command+; (titik koma) di macOS. Anda dapat menemukan deskripsi beberapa bagian baru dan terupdate untuk PSD di bawah.

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 fitur baru untuk mengimpor, membuat, mengelola, dan menggunakan resource di aplikasi Anda. Anda dapat membuka jendela fitur ini dengan memilih View > Tool Windows > Resource Manager dari panel menu. Pengelola Resource 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 fitur, lalu pilih Import Drawables dari menu drop-down.
  • Mengonversi SVG menjadi objek VectorDrawable: Anda dapat menggunakan wizard Import Drawables untuk mengonversi gambar SVG menjadi objek VectorDrawable.
  • Menarik lalu melepas aset: Dari jendela fitur Resource Manager, Anda dapat menarik lalu melepas aset yang dapat digambar 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 fitur 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

Saat Anda menyediakan file simbol proses debug untuk library bersama .so di dalam APK, Android Studio akan memverifikasi bahwa ID build file simbol yang diberikan sesuai dengan ID build 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, pengaburan, 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 mengenai proses kompilasi sebelum R8 diperkenalkan.

Sebelum R8, ProGuard merupakan langkah kompilasi yang berbeda dari dexing dan desugaring.

Kini dengan R8, desugaring, penyusutan, pengaburan, pengoptimalan, dan dexing (D8) dapat diselesaikan dalam satu langkah, seperti digambarkan di bawah ini.

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

Perlu diperhatikan bahwa R8 didesain 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 didesain secara khusus 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 di output build Anda.

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

# 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.
  • Kini panel Attributes juga menampilkan indikator di samping setiap atribut, yaitu solid jika nilai atribut merupakan referensi resource dan kosong jika sebaliknya.
  • Atribut dengan error atau peringatan kini akan ditandai. Sorotan berwarna merah menunjukkan error (misalnya, jika Anda menggunakan nilai tata letak yang tidak valid) dan sorotan berwarna oranye menunjukkan peringatan (misalnya, jika Anda menggunakan nilai hard code).

Tindakan intent baru untuk mengimpor dependensi dengan cepat

Jika Anda mulai menggunakan class Jetpack dan Firebase tertentu dalam kode Anda, tindakan intent baru akan menyarankan penambahan dependensi library Gradle yang diperlukan ke project Anda, jika hal tersebut belum dilakukan. Misalnya, jika Anda mereferensikan class WorkManager tanpa terlebih dahulu mengimpor dependensi android.arch.work:work-runtime yang diperlukan, tindakan intent memudahkan Anda melakukan hal ini hanya dengan sekali klik, seperti 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 penyempurnaan 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 mau, 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 akan diaktifkan secara otomatis selagi merekam aktivitas CPU, lalu dikembalikan ke setelan sebelumnya saat 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 membutuhkan 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 perekaman di bagian bernama FRAMES, seperti yang ditampilkan 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. Kini Android Studio 3.3 memformat jenis teks tertentu secara default, termasuk JSON, XML, dan HTML. Di tab Response dan Request, klik link View Parsed untuk menampilkan teks berformat, dan klik link View 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 baru.

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 fitur pemeriksaan ini di dialog Settings atau Preferences, Anda juga dapat melihat daftar pemeriksaan Clang-Tidy yang diaktifkan dan dinonaktifkan pada bagian Option di 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 yang digunakan Gradle, tambahkan kode berikut ke file build.gradle modul:

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

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi CMake dalam build.gradle, lihat Mengonfigurasi Gradle secara manual.

Sintaks "+" baru untuk menentukan versi minimum CMake

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

Android App Bundles kini mendukung Aplikasi Instan

Kini Android Studio memungkinkan Anda mem-build Android App Bundles dengan dukungan penuh untuk Google Play Instan. 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>
    

Setelah itu, Anda dapat membuat modul fitur dinamis yang mendukung pengalaman 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 mengetahui informasi selengkapnya, lihat Mengaktifkan sinkronisasi project varian tunggal.

Memberikan masukan cepat

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

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

Jika belum melakukannya, Anda dapat mengaktifkan opsi berbagi statistik penggunaan dengan membuka dialog Settings (Preferences di Mac), mengklik 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 fitur build default saat ini adalah 28.0.3.
  • Di library Navigation, nama jenis argumen telah diganti 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.
    • Penambahan SliceProvider menyebabkan error kompilasi pada project yang tidak menggunakan library androidx.*.
    • Beberapa pengujian unit Kotlin tidak dijalankan.
    • Masalah data binding menyebabkan PsiInvalidElementAccessException.
    • Elemen <merge> terkadang menyebabkan Layout Editor tidak 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 fitur build, saat menggunakan plugin Gradle Android 3.2.0 dengan renderscriptSupportModeEnabled yang disetel ke true, Anda harus menyertakan kode berikut di file build.gradle masing-masing 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 menyediakan tampilan grafis guna 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 library ekstensi Android baru menggunakan ruang nama androidx. Untuk mengetahui 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 Gradle Android menyediakan tanda global berikut yang dapat Anda setel di file gradle.properties Anda:

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

Kedua tanda akan disetel ke true jika Anda menggunakan perintah Migrate to AndroidX.

Jika Anda ingin segera mulai menggunakan library AndroidX dan tidak perlu mengonversi library pihak ketiga yang ada, Anda dapat menyetel tanda android.useAndroidX ke true dan tanda 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 penayangan aplikasi baru di Google Play, yang disebut Pengiriman Dinamis, menggunakan app bundle untuk membuat dan menayangkan APK yang dioptimalkan bagi konfigurasi perangkat setiap pengguna, sehingga setiap pengguna hanya mendownload kode dan resource yang mereka butuhkan untuk menjalankan aplikasi Anda. Anda tidak perlu lagi mem-build, menandatangani, serta mengelola banyak APK, dan pengguna mendapatkan objek download yang lebih kecil serta lebih optimal.

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 mem-build 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 ingin digunakan untuk mengisi tampilan.

Untuk mencoba menggunakan sampel data, tambahkan RecyclerView ke tata letak baru, klik tombol atribut waktu desain di bawah tampilan, dan pilih salah satu opsi 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 dari 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 tempat referensi JNI dialokasikan dan dilepas dalam kode Anda.

Mengimpor, mengekspor, dan memeriksa file heap dump memori

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

Impor file .hprof dengan mengklik Start new profiler session di panel Sessions pada 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 selama proses startup aplikasi

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 dengan 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

Kini 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 dan memilih 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

Kini Anda dapat memulai dan menghentikan perekaman aktivitas CPU di CPU Profiler dengan menambahkan Debug API ke aplikasi Anda. Setelah Anda men-deploy aplikasi ke perangkat, profiler akan otomatis mulai merekam aktivitas CPU saat aplikasi Anda memanggil startMethodTracing(String tracePath), dan akan berhenti merekam saat aplikasi 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.

Guna 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.

Guna mengaktifkan pemeriksaan ini untuk build command-line, tambahkan kode 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

Kini 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 penyusutan dan pengaburan 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 mem-build banyak APK yang masing-masing menargetkan ABI berbeda, plugin secara default tidak lagi membuat APK untuk ABI berikut: mips, mips64, dan armeabi.

Jika ingin mem-build APK yang menargetkan ABI ini, Anda harus menggunakan NDK r16b atau yang lebih lama dan menentukan ABI di file build.gradle, 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. Di 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, entah Anda men-deploy ke perangkat atau mem-build APK untuk dirilis, plugin Android untuk Gradle akan mengaktifkan native multidex untuk semua modul yang menetapkan minSdkVersion=21 atau 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.

Kini 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 Main Kotlin 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 sebelumnya bergantung pada versi com.android.tools:annotations yang lama. Kini kompilator ini menggunakan anotasi fitur 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 kumpulan 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 yang dapat digambar yang diimpor dari file SVG.
  • Peringatan mengenai penghentian konfigurasi dependensi compile telah diperbarui dengan panduan konfigurasi implementation dan api yang lebih baik. Guna 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 (entitas), 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:

  • Kini Anda dapat menggunakan objek LiveData sebagai field yang dapat diobservasi dalam ungkapan data binding. Class ViewDataBinding kini mencakup metode setLifecycle() baru yang digunakan untuk mengobservasi objek LiveData.

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

  • Anda dapat melihat pratinjau kompilator 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 kompilator 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 menyetel android.enableD8 ke false dalam gradle.properties, hapus tanda tersebut atau setel ke true:

android.enableD8=true
    

Untuk mengetahui detailnya, lihat Kompilator 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 nilai berikut dalam 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 kompatibel dengan Android 4.1 (API level 16) dan yang lebih baru.

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 baru.

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

Profiler CPU 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

Kini 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 fitur 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 constraints 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 fitur 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-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 fitur 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 mengoptimalkan 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 yang dapat digambar 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 Pengindeksan Aplikasi Firebase

Firebase Assistant telah diperbarui dengan tutorial baru untuk menguji Pengindeksan Aplikasi. 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 baru)
    • 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 serta Properties.

Penganalisis APK

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

Penganalisis APK juga telah diperbarui 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 menyusutkan 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 kompilator ini akan menggantikan kompilator DX, tetapi sekarang Anda dapat memilih untuk menggunakan kompilator D8 yang baru.

Kompilasi DEX berdampak langsung pada waktu build aplikasi, ukuran file .dex, dan performa runtime Anda. Jika kompilator D8 yang baru dibandingkan dengan kompilator DX saat ini, D8 mengompilasi lebih cepat dan menghasilkan file .dex yang lebih kecil, dengan performa runtime aplikasi yang sama atau lebih baik.

Untuk mencobanya, tetapkan nilai berikut di file gradle.properties project:

android.enableD8=true
    

Untuk mengetahui informasi selengkapnya, lihat postingan blog tentang kompilator 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 memperbarui project yang ada, tambahkan google() di blok repositories file build.gradle tingkat teratas:

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 mengetahui 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 mengetahui informasi selengkapnya, lihat Mem-build UI yang Responsif Menggunakan 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 mengetahui informasi selengkapnya, lihat Menambahkan ikon material.
  • Anotasi baru dan yang telah diupdate. Anotasi @RestrictTo baru untuk metode, class, dan paket memungkinkan Anda membatasi API. Anotasi @VisibleForTesting yang diperbarui sekarang memiliki argumen otherwise opsional yang memungkinkan Anda menentukan visibilitas metode jika bukan untuk membuatnya terlihat saat 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 mengetahui informasi selengkapnya mengenai 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 lebih baru.
    • 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 untuk sementara saat membuat profil aplikasi.
  • Tombol AVD Manager dan SDK Manager kini disertakan di Navigation Bar ramping dan juga 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 fitur 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 untuk 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 yang tidak berfungsi dengan benar (masalah 224167)
  • Perbaikan bug download otomatis Gradle untuk library Constraint Layout (masalah 212128)
  • Perbaikan bug untuk kompilator 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 fitur 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.
  • Fitur Penganalisis APK baru agar Anda dapat memeriksa konten paket aplikasi.
  • Fitur 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 sampel kode 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. Perlu diketahui bahwa Anda dapat mengonfigurasi tampilan logcat Monitor, namun 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 kompilator Jack, termasuk dukungan untuk prosesor anotasi dan proses dexing. Untuk mempelajari lebih lanjut, baca catatan rilis plugin Android untuk Gradle 2.2.0.
  • Penambahan sampel AccelerometerPlay yang telah diperbarui sehingga Anda dapat mencoba kontrol Accelerometer emulator. Pilih File > New > Import Sample untuk mengimpor project.
  • 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 Anda telah menyesuaikan template file AnnotationType, Class, Enum, Interface, atau Singleton, Anda harus mengubah template agar sesuai dengan template yang baru atau Anda tidak akan dapat menggunakan field 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. Untuk mengetahui detail selengkapnya, lihat catatan rilis Gradle.

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 kompilator 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 kompilator Jack karena saat ini keduanya tidak kompatibel.

Meskipun Android Studio 2.1 saat ini sudah stabil, kompilator Jack masih dalam tahap eksperimental sehingga 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 field 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 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.
  • Tanda untuk upaya penggunaan interpolasi string yang salah untuk memasukkan nomor versi di file build.gradle.
  • Tanda untuk class anonim yang mengembangkan class Fragment.
  • Tanda untuk kode native di lokasi yang tidak aman, seperti folder res/ dan asset/. Tanda ini menyarankan agar kode native disimpan di folder libs/, yang kemudian dipaketkan dengan aman ke dalam folder data/app-lib/ aplikasi pada waktu penginstalan. AOSP: #169950
  • Tanda 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 penciut resource Gradle, dengan mempertimbangkan set sumber tidak aktif (seperti resource yang digunakan dalam ragam build lainnya) dan penanganan impor field statis dengan benar.
  • Memeriksa apakah referensi API implisit didukung di semua platform yang ditargetkan oleh minSdkVersion.
  • Menandai penyalahgunaan RecyclerView dan Parcelable.
  • Pemeriksaan @IntDef, @IntRange, dan @Size sekarang juga dilakukan untuk array serta 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 Fitur SDK.
  • 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 grafik 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 Google App Indexing Test. 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