Derleme Analiz Aracı ile derleme performansıyla ilgili sorunları giderme

Projenizin derleme performansını incelemek için Derleme Analiz Aracı'nı kullanın. Derleme Analiz Aracı, gerçekleştirdiğiniz her derleme için en önemli bilgileri sunmaya çalışır. Böylece derleme performansınızdaki regresyonları hızla belirleyip çözümleyebilirsiniz.

Derleme performansını iyileştirmeye yönelik ek stratejiler için Derleme hızınızı optimize etme bölümünü okuyun.

Başlayın

Uygulamanızı her derlediğinizde, Derleme Analiz Aracı bir rapor oluşturur ve en son rapordaki verileri Derleme penceresinde gösterir.

Başlamak için aşağıdaki adımları uygulayın:

  1. Henüz yapmadıysanız aşağıdaki yöntemlerden birini kullanarak uygulamanızı oluşturun:
    • Menü çubuğundan Oluştur > Proje Yap'ı tıklayın.
    • Bir Android App Bundle veya APK oluşturmak için menü çubuğundan Derleme > Derleme Paketleri / APK'lar > Derleme Paketleri veya Derleme > Derleme Paketleri / APK'lar > APK oluştur'u tıklayın.
  2. Derleme penceresini açmak için menü çubuğundan Görünüm > Araç Pencereleri > Derleme'yi seçin.
  3. Derleme raporunu Derleme Analiz Aracı'nda görüntülemek için Derleme penceresindeki Analiz Aracı Derleme sekmesini tıklayın.

Derleme Analiz Aracı'nın sunduğu veriler derlemeler arasında değişebilir. Bu nedenle, projenizi birden çok kez derlemeniz ve kalıpları belirlemek için verileri karşılaştırmanız faydalı olur.

Derlemenin süresini belirleyen görevleri içeren eklentileri görüntüleyin

Bir derlemeyi tamamladıktan sonra Derleme Analiz Aracı'nı ilk kez açtığınızda pencerede, Şekil 1'de gösterildiği gibi derleme analizine genel bir bakış gösterilir.

Şekil 1. Derleme Analiz Aracı'na genel bakış sayfasında bulguların bir özeti sunulur.

Derlemenin süresini belirleyen görevlerin yer aldığı eklentilerin dökümünü görmek için genel bakış sayfasında Derleme süresini etkileyen görevler içeren eklentiler'i tıklayın. Ayrıca açılır menüden Görevler'i seçebilir ve eklentiye göre gruplandırdığınızı onaylayabilirsiniz. Grafikte, eklentiler ve ilgili görevler, tamamlanmaları için harcadıkları toplam süreye göre sıralanır.

Şekil 2. Derleme Analiz Aracı, derlemenizin süresini etkileyen eklentilerin dökümünü sağlar.

Derlemenin süresini belirleyen görevleri göster

Derlemenizin süresine katkıda bulunan görevlerin bir dökümünü görüntülemek için genel bakış sayfasında Derleme süresini etkileyen görevler'i tıklayın veya açılır menüden Görevler'i seçin. Projeniz AGP 8.0 veya sonraki bir sürümünü kullanıyorsa görevler varsayılan olarak kategoriye göre gruplandırılır. Böylece, derleme süresini etkileyen alanları belirlemek daha kolay olur. Yürütülmesi hakkında daha fazla bilgi edinmek için her bir alt görevi tıklayın.

Şekil 3. Derleme Analiz Aracı, derlemenizin süresinden en sorumlu görevlerin dökümünü sağlar.

Uyarıları inceleme

Derleme Analiz Aracı, bazı görevlerin daha verimli çalışacak şekilde yapılandırılabileceğini tespit ederse bir uyarı verir. Derleme Analiz Aracı'nın derlemeniz için belirlediği tüm uyarıları görmek için genel bakış sayfasında Tüm uyarılar'ı tıklayın veya açılır menüden Uyarılar'ı seçin.

Bazı uyarılarda, Şekil 4'te gösterildiği gibi bir Rapor oluştur bağlantısı bulunur. Rapor oluştur bağlantısını tıkladığınızda, eklenti geliştiricisinin sorunu eklentinin yeni bir sürümünde çözmesine yardımcı olabilecek ek bilgiler içeren bir iletişim kutusu görünür. Bilgileri eklenti geliştiricisine gönderilecek bir hata raporuna daha kolay bir şekilde yapıştırmak için Kopyala'yı tıklayarak metni panonuza kaydedebilirsiniz.

Şekil 4. Derleme Analiz Aracı uyarıları hakkında ayrıntılı bilgi.

Uyarı türleri

Derleme Analiz Aracı aşağıdaki uyarı türlerini raporlar:

  • Görevleri her zaman çalıştır: Her zaman çalışan bir görev, diğer görevlerin her derlemede çalıştırılmasını sağlar ve bu gereksizdir. Bu uyarıyı görmenize yol açan iki temel neden vardır:

    • (Daha yaygın) Görev girişlerini ve çıkışlarını doğru tanımlamadınız. Böyle bir durumda görevleriniz için giriş ve çıkışları doğru beyan etmeniz gerekir. Yani, giriş ve çıkışları kendiniz beyan edebilirsiniz. Uyarıyı tetikleyen görevler üçüncü taraf eklentilerden geliyorsa eklenti sürümlerini değiştirebilirsiniz.

    • (Daha az yaygın) Bir görevde upToDateWhen yanlış değerine ayarlanır, bu da kaçınılması gerekir. Yanlış olarak değerlendirilen bir mantık olabilir veya upToDateWhen, yanlış olacak şekilde koda gömülmüş olabilir. Yanlış olarak değerlendirilen bir mantık varsa bu sonuç kasıtlı olabilir ve uyarıyı göz ardı etmeyi seçebilirsiniz. upToDateWhen kodu yanlış olacak şekilde sabitlenirse kodu kodunuzdan kaldırmanız gerekir.

  • Görev kurulum sorunları: Bu uyarı, aynı dizini çıkış olarak bildiren görevler için oluşturulur. Yani bu görev çıkışları, büyük olasılıkla derlemeler arasında korunmaz ve bu görevler, hiçbir değişiklik olmasa bile her zaman çalışır. Bu uyarıyı ele almak isterseniz görevleriniz için farklı çıkış dizinleri bildirmeniz gerekir. Yani, uyarıyı tetikleyen görevler üçüncü taraf eklentilerden geliyorsa eklenti sürümlerini değiştirebileceğiniz farklı çıkış dizinlerini kendiniz tanımlayabilir veya değiştirebilirsiniz.

  • Artımlı olmayan ek açıklama işlemcisi: Bu uyarı, ek açıklama işlemcisinin artımlı olmadığı ve JavaCompile görevinin her zaman artımlı olmayan şekilde çalışmasına neden olduğu durumlarda oluşturulur. Bu uyarıyı ele almak için artımlı ek açıklama işlemcisine geçin.

  • Yapılandırma önbelleği: Bu uyarı, projeniz için yapılandırma önbelleğine alma etkinleştirilmemişse gösterilir. Derleme Analiz Aracı, projenizin yapılandırma önbelleğe alma ile uyumlu olup olmadığını kontrol etmek için bir dizi derlemeyi adım adım gösterir. Uyumluluk kontrolleri başarılı olursa yapılandırma önbelleğe almayı Derleme Analiz Aracı'ndan etkinleştirebilirsiniz.

  • Jetifier'ı kontrol edin: Bu uyarı, projenizde enableJetifier işareti varsa ve etkinleştirilmişse (gradle.properties dosyanızda android.enableJetifier=true varsa) gösterilir. Derleme Analiz Aracı, projenizin daha iyi derleme performansına sahip olması ve bakımı yapılmayan Android Destek kitaplıklarından taşınması için işaretin güvenli bir şekilde kaldırılıp kaldırılmayacağını kontrol edebilir.

İndirme etkisini kontrol etme

Derleme Analiz Aracı, bağımlılıkları indirmek için harcanan sürenin özetini ve depo başına indirmelerin ayrıntılı bir görünümünü sunar. İndirmelerin etkisini kontrol etmek için açılır menüden İndirilenler'i seçin. Bu bilgi Senkronizasyon penceresinde de mevcuttur.

Bu bilgileri, beklenmedik bağımlılık indirmelerinin derleme performansınızı olumsuz bir şekilde etkileyip etkilemediğini belirlemek için kullanabilirsiniz. Bu, yapıları tutarlı bir şekilde indirmemesi gereken artımlı derlemeler sırasında özellikle önemlidir.

Özellikle, beklenmedik indirmelere neden olan bağımlılıkların dinamik sürümlerinin kullanımı gibi yapılandırma sorunlarını tanımlamak için bu bilgileri kullanabilirsiniz. Ayrıca belirli bir depo için başarısız istek sayısının yüksek olması, deponun kaldırılması veya depo yapılandırmanızda daha alt bir yere taşınması gerektiğini gösteriyor olabilir.

Şekil 5. Derleme Analiz Aracı, indirmelerin derleme süresi üzerindeki etkisini gösterir.

[Yalnızca Windows] Virüsten korunma yazılımlarının etkisini kontrol edin

Derleme Analiz Aracı, virüsten koruma yazılımlarının derleme performansınızı etkileyip etkilemediğini size bildirir. Bu durum, Windows Defender gibi virüsten koruma yazılımı Gradle tarafından kullanılan dizinleri gerçek zamanlı olarak taradığında ortaya çıkabilir. Derleme Analiz Aracı, etkin taramadan hariç tutulacak dizinlerin bir listesini önerir ve mümkünse bunları Windows Defender klasör hariç tutma listesine eklemek için bir bağlantı sunar.