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:
- 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.
- Derleme penceresini açmak için menü çubuğundan Görünüm > Araç Pencereleri > Derleme'yi seçin.
- 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.
![](https://developer.android.google.cn/static/studio/images/build/build-analyzer/analyzer-overview.png?authuser=9&hl=tr)
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.
![](https://developer.android.google.cn/static/studio/images/plugins-breakdown.png?authuser=9&hl=tr)
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.
![](https://developer.android.google.cn/static/studio/images/tasks-breakdown.png?authuser=9&hl=tr)
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.
![](https://developer.android.google.cn/static/studio/images/build/build-analyzer/inspect-warning.png?authuser=9&hl=tr)
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 veyaupToDateWhen
, 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ızdaandroid.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.
![](https://developer.android.google.cn/static/studio/images/build/build-analyzer/build-analyzer-download-impact.png?authuser=9&hl=tr)
[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.