Project baru kini menggunakan DSL Kotlin (build.gradle.kts) secara default untuk konfigurasi
build. Hal ini menawarkan pengalaman pengeditan yang lebih baik daripada Groovy DSL
(build.gradle) dengan sorotan sintaksis, penyelesaian kode, dan navigasi ke
deklarasi. Perhatikan bahwa jika Anda menggunakan AGP 8.1 dan DSL Kotlin untuk konfigurasi
build, Anda harus menggunakan Gradle 8.1 untuk mendapatkan pengalaman terbaik. Untuk mempelajari lebih lanjut,
lihat panduan migrasi Kotlin DSL.
Dukungan bahasa per aplikasi otomatis
Mulai dari Android Studio Giraffe Canary 7 dan AGP 8.1.0-alpha07, Anda dapat
mengonfigurasi aplikasi untuk mendukung preferensi bahasa
per aplikasi secara otomatis. Berdasarkan resource
project, plugin Android Gradle menghasilkan file LocaleConfig
dan menambahkan referensi ke file tersebut dalam file manifes akhir, sehingga Anda tidak perlu lagi
melakukannya secara manual. AGP menggunakan resource dalam folder res modul aplikasi Anda
dan dependensi modul library apa pun untuk menentukan lokalitas yang akan disertakan dalam
file LocaleConfig.
Perhatikan bahwa fitur bahasa per aplikasi otomatis mendukung aplikasi yang menjalankan Android
13 (level API 33) atau yang lebih baru. Untuk menggunakan fitur ini, Anda harus menetapkan
compileSdkVersion ke versi 33 atau lebih tinggi. Untuk mengonfigurasi preferensi bahasa per aplikasi
untuk Android versi sebelumnya, Anda masih harus
menggunakan API dan pemilih bahasa dalam aplikasi.
Untuk mengaktifkan dukungan bahasa per aplikasi otomatis, tentukan lokalitas default:
Dalam folder res modul aplikasi, buat file baru bernama
resources.properties.
Dalam file resources.properties, tetapkan lokalitas default dengan
label unqualifiedResLocale. Untuk membentuk nama lokalitas, gabungkan kode bahasa dengan skrip opsional dan kode wilayah, yang memisahkan keduanya dengan tanda hubung:
Bahasa: Gunakan kode
ISO 639-1
dua atau tiga huruf.
Misalnya, jika lokalitas default Anda adalah bahasa Inggris Amerika:
unqualifiedResLocale=en-US
AGP menambahkan lokalitas default ini dan
lokalitas alternatif
yang telah Anda tentukan, menggunakan direktori values-* dalam folder res, ke
file LocaleConfig yang dibuat secara otomatis.
Dukungan bahasa per aplikasi otomatis dinonaktifkan secara default. Untuk mengaktifkan fitur ini,
gunakan setelan generateLocaleConfig di blok androidResources {}
file build.gradle.kts level modul (file build.gradle jika Anda menggunakan
Groovy):
Android Lint berisi bytecode yang menargetkan JVM 17
Mulai AGP 8.1.0-alpha04, Android Lint berisi bytecode yang menargetkan JVM
17. Jika menulis pemeriksaan lint kustom, Anda harus mengompilasi dengan JDK 17 atau yang lebih tinggi
dan menentukan jvmTarget = '17' di opsi compiler Kotlin.
Setelan kompresi library native dipindahkan ke DSL
Mulai dari AGP 8.1.0-alpha10, Anda akan mendapatkan peringatan jika tidak mengonfigurasi
kompresi library native menggunakan DSL, bukan manifes. Panduan
berikut menjelaskan cara memperbarui konfigurasi untuk menggunakan DSL. Untuk
mendapatkan bantuan dalam melakukan update ini, gunakan Upgrade Assistant AGP
(Tools > AGP Upgrade Assistant).
Untuk menggunakan library native yang tidak dikompresi, hapus atribut android::extractNativeLibs
dari manifes dan tambahkan kode berikut ke file build.gradle.kts
level modul (file build.gradle jika Anda menggunakan Groovy):
Mengaktifkannya tanpa konfigurasi penandatanganan yang ditentukan akan menyebabkan AGP menggunakan
konfigurasi penandatanganan debug default saat menjalankan build yang dapat dibuat profil atau
di-debug. Flag ini dinonaktifkan secara default untuk mendorong penulis build
mendeklarasikan konfigurasi penandatanganan pembuatan profil tertentu.
android.experimental.library.desugarAndroidTest
AGP 8.0
false
Flag ini memungkinkan builder library mengaktifkan desugaring library inti untuk
APK pengujian tanpa memengaruhi AAR yang dihasilkan, misalnya melalui linting.
Kami berencana untuk mendukung perilaku ini di Variant API pada akhirnya.
Jika diaktifkan, Perangkat yang Dikelola Gradle memungkinkan jenis perangkat kustom yang ditentukan pengguna
yang dapat disediakan oleh plugin. Flag ini harus diaktifkan jika Anda ingin menggunakan plugin Firebase Test Lab.
android.lint.printStackTrace
AGP 8.0
false
Jika diaktifkan, Android lint akan mencetak stacktrace jika mengalami error. Flag ini
memiliki kemampuan yang sama dengan variabel lingkungan
LINT_PRINT_STACKTRACE.
Menentukan jumlah maksimum Perangkat yang Dikelola Gradle serentak
(AVD) yang akan aktif pada satu titik waktu. Jika nilainya 0 atau
negatif, tidak ada jumlah maksimum perangkat.
[AGP 8.1.0] Pengujian ./gradlew gagal dengan pesan "Unable to find manifest output" jika splits.abi.isEnable dan testOptions.unitTests.isIncludeAndroidResources bernilai benar (true)
[AGP 8.1.0] Pengujian ./gradlew gagal dengan pesan "Unable to find manifest output" jika splits.abi.isEnable dan testOptions.unitTests.isIncludeAndroidResources bernilai benar (true)
Jangan menjalankan tugas dexing pada class subproject jika sudah di-dex melalui transformasi artefak
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-11-15 UTC.
[null,null,["Terakhir diperbarui pada 2024-11-15 UTC."],[],[]]