Sobes.tech
Middle

Android'de düzenin (layout) performansı nasıl ölçülür?

sobes.tech yapay zeka

AI'dan gelen yanıt

Android'de düzen performansı, ölçüm ve düzenleme aşamalarına harcanan zamanla ölçülür.

Ana göstergeler:

  • Ölçüm Süresi (Measure Time): Her View ve ViewGroup'un boyutunu belirlemek için gereken zaman.
  • Düzenleme Süresi (Layout Time): Her View ve ViewGroup'un ekran üzerindeki konumunu belirlemek için gereken zaman.
  • Düzenleme Geçişleri Sayısı (Layout Passes): Görünüm ağacının kararlı bir duruma ulaşmak için ölçüm ve düzenleme aşamalarını kaç kez geçmesi gerektiği. Genellikle iki geçiş (Measure ve Layout) en iyisidir. Çok sayıda geçiş (multi-pass layout) verimsizliğe işaret edebilir, özellikle iç içe geçmiş LinearLayout'larda ağırlık kullanımıyla.
  • Ağaç Derinliği ve Karmaşıklığı: Görünüm hiyerarşisi ne kadar derin ve karmaşıksa, düzenleme süresi o kadar artar.

Ölçüm araçları:

  • Layout Inspector: Görünüm hiyerarşisini görselleştirmeye ve her View için ölçüm ve düzenleme süresini görmeye olanak tanır.
  • Systrace: UI düzenleme olayları (Choreographer#doFrame) dahil olmak üzere thread yürütme raporunu detaylı şekilde gösterir.
  • Android Profiler (CPU Profiler): Metot izlerini kaydetmeye ve analiz etmeye olanak tanır, böylece düzenleme kodundaki darboğazlar tespit edilir.
// Düzenleme sürecini başlatan basit layout inflate örneği
LayoutInflater inflater = LayoutInflater.from(context);
View rootView = inflater.inflate(R.layout.my_layout, parent, false);
parent.addView(rootView); // Düzenleme geçişini tetikler