Gradle için Android eklentisi, 1.5.0 düzeltmesi (Kasım 2015)

Bağımlılıklar:
Minimum sürüm Varsayılan sürüm Notlar
Gradle 2.2.1 2.2.1 Daha fazla bilgi için Gradle'i güncelleme başlıklı makaleyi inceleyin.
SDK Oluşturma Araçları 21.1.1 21.1.1 SDK Oluşturma Araçları'nı yükleyin veya yapılandırın.
Genel Notlar:
  • Veri Bağlama eklentisi, Gradle için Android eklentisine entegre edildi. Bu özelliği etkinleştirmek için, eklentiyi kullanan her projeye ait build.gradle dosyasına aşağıdaki kodu ekleyin:
  • android {
        dataBinding {
            enabled = true
        }
    }
            
    android {
        dataBinding {
            enabled = true
        }
    }
            
  • Üçüncü taraf eklentilerinin, derlenmiş .class dosyalarını .dex dosyalarına dönüştürülmeden önce değiştirmesine olanak tanımak için yeni bir Transform API eklendi. Transform API, özel sınıf işlemlerini eklemeyi basitleştirirken neleri değiştirebileceğiniz konusunda daha fazla esneklik sunar. Bir derlemeye dönüştürme eklemek için Transform arayüzlerinden birini uygulayan yeni bir sınıf oluşturun ve bu sınıfı android.registerTransform(theTransform) veya android.registerTransform(theTransform, dependencies) ile kaydedin. Görevleri birbirine bağlamanıza gerek yoktur. Transform API ile ilgili olarak aşağıdakileri unutmayın:
    • Dönüşümler şulardan biri veya daha fazlası için geçerli olabilir: mevcut proje, alt projeler ve harici kitaplıklar.
    • Dönüşümler, tüm varyantlara uygulanacak şekilde global olarak kaydedilmelidir.
    • Java Code Coverage Library (JaCoCo), ProGuard ve MultiDex aracılığıyla yapılan dahili kod işleme artık Transform API'yi kullanıyor. Ancak Java Android Derleyici Kiti (Jack) bu API'yi kullanmaz. Yalnızca javac/dx kod yolu bu API'yi kullanır.
    • Gradle, dönüştürme işlemlerini şu sırayla yürütür: JaCoCo, üçüncü taraf eklentileri, ProGuard. Üçüncü taraf eklentilerinin yürütme sırası, dönüştürme işlemlerinin üçüncü taraf eklentileri tarafından eklenme sırasıyla eşleşir. Üçüncü taraf eklenti geliştiricileri, dönüştürme işlemlerinin yürütme sırasını API üzerinden kontrol edemez.
  • ApplicationVariant sınıfındaki dex alıcısının desteği sonlandırıldı. Artık bir dönüştürme işlemiyle gerçekleştirildiği için Dex görevine artık varyant API'si üzerinden erişemezsiniz. Şu anda dex sürecini kontrol etmek için alternatif bir yöntem yoktur.
  • Öğeler için artımlı destek düzeltildi.
  • MultiDex desteği, test projeleri için kullanıma sunulduğundan iyileştirildi ve testler artık otomatik olarak com.android.support:multidex-instrumentation bağımlılıklarına sahip.
  • Gradle derlemesi eşzamansız görevleri çağırdığında ve çalışan işleminde hata oluştuğunda Gradle derlemesinde doğru şekilde başarısız olma ve temel hatanın nedenini bildirme özelliği eklendi.
  • Birden fazla ABI içeren varyantlarda belirli bir Uygulama İkili Arabirimi'ni (ABI) yapılandırma desteği eklendi.
  • Testleri yüklerken veya çalıştırırken ANDROID_SERIAL ortam değişkeni için virgülle ayrılmış cihaz seri numarası listesi desteği eklendi.
  • Android 5.0 (API seviyesi 20) ve sonraki sürümleri çalıştıran cihazlarda APK adında boşluk bulunduğunda yaşanan yükleme hatası düzeltildi.
  • Android Öğe Paketleme Aracı (AAPT) hata çıkışıyla ilgili çeşitli sorunlar düzeltildi.
  • Daha hızlı artımlı derlemeler için JaCoCo artımlı enstrümantasyon desteği eklendi. Gradle için Android eklentisi artık JaCoCo enstrümanını doğrudan çağırıyor. JaCoCo enstrümanının daha yeni bir sürümünü kullanmak için bu sürümü bir derleme komut dosyası bağımlılığı olarak eklemeniz gerekir.
  • Sınıf olmayan dosyaları yoksayacak şekilde JaCoCo desteği düzeltildi.
  • Geriye dönük uyumluluk için derleme sırasında PNG oluşturmak üzere vektör çizilebilir öğe desteği eklendi. Gradle için Android eklentisi, bir API sürümü belirtmeyen veya uygulama manifestindeki <uses-sdk> öğesinde 20 veya daha düşük bir android:minSdkVersion özelliği belirten bir kaynak dizininde bulunan her vektör çizilebilir öğe için PNG oluşturur. PNG yoğunluklarını, build.gradle dosyasının defaultConfig veya productFlavor bölümlerindeki generatedDensities mülkünü kullanarak ayarlayabilirsiniz.
  • Eklenti tarafından yalnızca bir kez oluşturulan ve birim testi için kullanılan, taklit edilebilir android.jar öğesinin paylaşımı eklendi. app ve lib gibi birden fazla modül artık bu özelliği paylaşıyor. Yeniden oluşturmak için $rootDir/build dosyasını silin.
  • Java kaynaklarının işlenmesi, APK paketlenirken yerine karartma işlemlerinden önce gerçekleşecek şekilde değiştirildi. Bu değişiklik, karartma görevlerinin paket karartma işleminden sonra Java kaynaklarını uyarlama şansı elde etmesini sağlar.
  • Deneme amaçlı kitaplık eklentisinde Java Native Interface (JNI) kodunun kullanılmasıyla ilgili bir sorun düzeltildi.
  • Deneysel kitaplık eklentisinde platform sürümünü android:compileSdkVersion özelliğinden ayrı olarak ayarlama özelliği eklendi.