Android Gradle Eklentisi 3.2.0 (Eylül 2018)
Android eklentisinin bu sürümü için aşağıdakiler gerekir:
| Minimum sürüm | Varsayılan sürüm | Notlar | |
|---|---|---|---|
| Gradle | 4.6 | 4.6 | Daha fazla bilgi edinmek için Gradle'ı güncelleme bölümünü inceleyin. |
| SDK Derleme Araçları | 28.0.3 | 28.0.3 | SDK Derleme Araçları'nı yükleyin veya yapılandırın. |
3.2.1 (Ekim 2018)
Bu güncelleme ile birlikte, SDK Derleme Araçları için artık sürüm belirtmeniz gerekmiyor. Android Gradle eklentisi artık varsayılan olarak 28.0.3 sürümünü kullanıyor.
Yeni özellikler
-
Android App Bundle oluşturma desteği: Uygulama paketi, uygulamanızın derlenmiş kod ve kaynaklarının tamamını içeren, APK oluşturma ve imzalama işlemini ise Google Play Store'a bırakan yeni bir yükleme biçimidir. Artık birden fazla APK oluşturmanız, imzalamanız ve yönetmeniz gerekmez. Kullanıcılar, cihazları için optimize edilmiş daha küçük indirmeler elde eder. Daha fazla bilgi edinmek için Android App Bundle'lar hakkında başlıklı makaleyi okuyun.
-
Ek açıklama işleyicileri kullanılırken artımlı derleme hızlarının iyileştirilmesi için destek:
AnnotationProcessorOptionsDSL artıkCommandLineArgumentProvider'yi genişletiyor. Bu sayede, siz veya ek açıklama işleyicisi yazarı, artımlı derleme özelliği türü ek açıklamalarını kullanarak işleyici için bağımsız değişkenlere ek açıklamalar ekleyebilir. Bu ek açıklamaların kullanılması, artımlı ve önbelleğe alınmış temiz derlemelerin doğruluğunu ve performansını artırır. Daha fazla bilgi edinmek için Pass arguments to annotation processors (Açıklama işlemcilerine bağımsız değişkenler iletme) başlıklı makaleyi inceleyin. -
AndroidX için taşıma aracı: Android 3.2 ve sonraki sürümlerle Android Gradle eklentisi 3.2.0'ı kullanırken menü çubuğundan Refactor > Migrate to AndroidX'i seçerek projenizin yerel ve Maven bağımlılıklarını yeni AndroidX kitaplıklarını kullanacak şekilde taşıyabilirsiniz. Bu taşıma aracını kullandığınızda
gradle.propertiesdosyanızda aşağıdaki işaretler detrueolarak ayarlanır:-
android.useAndroidX:trueolarak ayarlandığında Android eklentisi, Destek Kitaplığı yerine uygun AndroidX kitaplığını kullanır. Bu işaret belirtilmediğinde eklenti, varsayılan olarakfalsedeğerini ayarlar. -
android.enableJetifier:trueolarak ayarlandığında Android eklentisi, mevcut üçüncü taraf kitaplıklarını ikili dosyalarını yeniden yazarak AndroidX'i kullanacak şekilde otomatik olarak taşır. Bu işaret belirtilmediğinde eklenti, varsayılan olarakfalsedeğerini ayarlar. Bu işareti yalnızcatrueolarak ayarlayabilirsiniz.android.useAndroidXdatrueolarak ayarlanmalıdır. Aksi takdirde derleme hatası alırsınız.Daha fazla bilgi için AndroidX'e genel bakış başlıklı makaleyi okuyun.
-
-
Yeni kod daraltıcı R8: R8, ProGuard'ın yerini alan yeni bir kod daraltma ve kod karartma aracıdır. Projenizin
gradle.propertiesdosyasına aşağıdakileri ekleyerek R8'in önizleme sürümünü kullanmaya başlayabilirsiniz:android.enableR8 = true
android.enableR8 = true
Davranış değişiklikleri
-
D8 ile desugaring artık varsayılan olarak etkindir.
-
AAPT2 artık Google'ın Maven deposunda. AAPT2'yi kullanmak için
google()bağımlılığınınbuild.gradledosyanızda bulunduğundan emin olun (aşağıdaki örnekte gösterildiği gibi):buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
-
Yerel multidex artık varsayılan olarak etkindir. Android Studio'nun önceki sürümlerinde, bir uygulamanın hata ayıklama sürümü Android API düzeyi 21 veya sonraki sürümlerin yüklü olduğu bir cihaza dağıtılırken yerel multidex etkinleştiriliyordu. Artık bir cihaza dağıtım yaparken veya yayın için APK oluştururken Android Gradle eklentisi,
minSdkVersion=21veya sonraki sürümleri hedefleyen tüm modüller için yerel çoklu dex'i etkinleştirir. -
Eklenti artık protobuf eklentisinin (0.8.6), Kotlin eklentisinin (1.2.50) ve Crashlytics eklentisinin (1.25.4) minimum sürümünü zorunlu kılıyor.
-
Özellik modülü eklentisi,
com.android.feature, artık modül adı belirtirken yalnızca harf, rakam ve alt çizgi kullanımını zorunlu kılıyor. Örneğin, özellik modülü adınız tire içeriyorsa derleme hatası alırsınız. Bu davranış, dinamik özellik eklentisinin davranışıyla aynıdır.
Hata düzeltmeleri
- JavaCompile artık veri bağlama içeren projelerde önbelleğe alınabilir. (69243050 numaralı sorun)
- Veri bağlama içeren kitaplık modülleri için derlemeyi daha iyi atlama. (77539932 numaralı sorun)
- Önceki sürümlerde bazı öngörülemeyen derleme hataları nedeniyle devre dışı bıraktıysanız artık configure-on-demand'ı yeniden etkinleştirebilirsiniz. (77910727 numaralı sorun)