Kotlin DSL, derleme yapılandırması için varsayılandır
Yeni projelerde artık derleme yapılandırması için varsayılan olarak Kotlin DSL (build.gradle.kts) kullanılıyor. Bu, Groovy DSL'ye (build.gradle) kıyasla söz dizimi vurgulama, kod tamamlama ve bildirimlere gitme gibi özelliklerle daha iyi bir düzenleme deneyimi sunar. AGP 8.1 ve derleme yapılandırması için Kotlin DSL'yi kullanıyorsanız en iyi deneyim için Gradle 8.1'i kullanmanız gerektiğini unutmayın. Daha fazla bilgi edinmek için Kotlin DSL taşıma kılavuzuna bakın.
Uygulamaya özgü otomatik dil desteği
Android Studio Giraffe Canary 7 ve AGP 8.1.0-alpha07'den itibaren uygulamanızı uygulama başına dil tercihlerini otomatik olarak destekleyecek şekilde yapılandırabilirsiniz. Android Gradle eklentisi, proje kaynaklarınıza göre LocaleConfig dosyasını oluşturur ve son manifest dosyasına bu dosyayla ilgili bir referans ekler. Böylece, bu işlemi artık manuel olarak yapmanız gerekmez. AGP, res dosyasında hangi yerel ayarların yer alacağını belirlemek için uygulama modüllerinizin res klasörlerindeki kaynakları ve kitaplık modülü bağımlılıklarını kullanır.LocaleConfig
Uygulama başına otomatik dil özelliğinin, Android 13 (API düzeyi 33) veya sonraki sürümlerde çalışan uygulamaları desteklediğini unutmayın. Bu özelliği kullanmak için compileSdkVersion değerini 33 veya daha yüksek bir değere ayarlamanız gerekir. Android'in önceki sürümlerinde uygulamaya özgü dil tercihlerini yapılandırmak için API'leri ve uygulama içi dil seçicileri kullanmaya devam etmeniz gerekir.
Uygulama bazında otomatik dil desteğini etkinleştirmek için varsayılan bir yerel ayar belirtin:
Uygulama modülünün res klasöründe resources.properties adlı yeni bir dosya oluşturun.
resources.properties dosyasında, unqualifiedResLocale etiketiyle varsayılan yerel ayarı belirleyin. Yerel ayar adlarını oluşturmak için dil kodunu isteğe bağlı olarak komut dosyası ve bölge kodlarıyla birleştirin. Her bir kodu tireyle ayırın:
Dil: İki veya üç harfli ISO 639-1 kodunu kullanın.
Örneğin, varsayılan yerel ayarınız Amerikan İngilizcesi ise:
unqualifiedResLocale=en-US
AGP, values-* dizinlerini kullanarak bu varsayılan yerel ayarı ve belirttiğiniz tüm alternatif yerel ayarları, otomatik olarak oluşturulan LocaleConfig dosyasına ekler.res
Uygulama bazında otomatik dil desteği varsayılan olarak devre dışıdır. Özelliği etkinleştirmek için modül düzeyindeki build.gradle.kts dosyasının (Groovy kullanıyorsanız build.gradle dosyası) androidResources {} bloğunda generateLocaleConfig ayarını kullanın:
Android Lint, JVM 17'yi hedefleyen bayt kodu içeriyor
AGP 8.1.0-alpha04'ten itibaren Android Lint, JVM 17'yi hedefleyen bayt kodu içerir. Özel lint kontrolleri yazarsanız JDK 17 veya daha yeni bir sürümle derleme yapmanız ve Kotlin derleyici seçeneklerinizde jvmTarget = '17' belirtmeniz gerekir.
AGP 8.1.0-alpha10'dan itibaren, yerel kitaplık sıkıştırmasını manifest yerine DSL kullanarak yapılandırmazsanız uyarı alırsınız. Aşağıdaki yönergelerde, yapılandırmanızı DSL'yi kullanacak şekilde nasıl güncelleyeceğiniz açıklanmaktadır. Bu güncellemeleri yapma konusunda yardım almak için AGP Yükseltme Asistanı'nı (Araçlar > AGP Yükseltme Asistanı) kullanın.
Sıkıştırılmamış yerel kitaplıkları kullanmak için manifest dosyasından android::extractNativeLibs
özelliğini kaldırın ve modül düzeyindeki
build.gradle.kts dosyasına (Groovy kullanıyorsanız build.gradle dosyası) aşağıdaki kodu ekleyin:
Bu ayar, imzalama yapılandırmaları belirtilmeden etkinleştirildiğinde AGP, profillenebilir veya hata ayıklanabilir bir derleme çalıştırırken varsayılan hata ayıklama imzalama yapılandırmasını kullanır. Bu işaret, derleme yazarlarını belirli profil oluşturma imzalama yapılandırmalarını bildirmeye teşvik etmek için varsayılan olarak devre dışı bırakılır.
android.experimental.library.desugarAndroidTest
AGP 8.0
false
Bu işaret, kitaplık oluşturucuların test APK'ları için temel kitaplık desugaring'ini etkinleştirmesine olanak tanır. Bu işlem, örneğin linting aracılığıyla oluşturulan AAR'yi etkilemez.
Bu davranışı ileride Variant API'de desteklemeyi planlıyoruz.
Etkinleştirilirse Gradle Managed Devices, bir eklenti tarafından sağlanabilen kullanıcı tanımlı özel cihaz türüne izin verir. Firebase Test Lab eklentisini kullanmak istiyorsanız bu işaret etkinleştirilmelidir.
android.lint.printStackTrace
AGP 8.0
false
Etkinleştirilirse Android lint, kilitlenmesi durumunda bir yığın izi yazdırır. Bu işaret, LINT_PRINT_STACKTRACE
ortam değişkeniyle aynı işlevlere sahiptir.
Herhangi bir anda etkin olacak eşzamanlı Gradle tarafından yönetilen cihazların (AVD'ler) maksimum sayısını belirtir. Değer 0 veya negatifse maksimum cihaz sayısı yoktur.
Hata: "Enable KSP and use the KSP processor for this dependency instead" (KSP'yi etkinleştirin ve bu bağımlılık için bunun yerine KSP işlemcisini kullanın) yalnızca bir web sitesine yönlendiriyor
[AGP 8.1.0] Hem splits.abi.isEnable hem de testOptions.unitTests.isIncludeAndroidResources doğruysa ./gradlew test, "Unable to find manifest output" (Manifest çıkışı bulunamadı) hatasıyla başarısız oluyor
[AGP 8.1.0] Hem splits.abi.isEnable hem de testOptions.unitTests.isIncludeAndroidResources doğruysa ./gradlew test, "Unable to find manifest output" (Manifest çıkışı bulunamadı) hatasıyla başarısız oluyor
Alt projelerin sınıfları, yapay nesne dönüşümleri aracılığıyla zaten dex'e dönüştürülmüşse bu sınıflarda dexing görevini çalıştırmayın.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-08-08 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-08-08 UTC."],[],[]]