Etkinlikler ve Programlar

Tamamen Optimize Edildi: Performans Spotlight Haftası'nı Özetliyoruz

Okuma süresi: 3 dakika

Geçtiğimiz haftayı, Android uygulamalarını daha hızlı, daha küçük ve daha kararlı hale getirmeye yardımcı olan en iyi uygulamaları ve rehberleri paylaşarak geçirdik. R8 optimize edicinin ve Profile Guided Optimizations'ın temel özelliklerinden Jetpack Compose ile performans iyileştirmelerine ve uygulamanızın performansını artırmaya yönelik yeni bir rehbere kadar, yüksek performanslı bir uygulama oluşturmak için ihtiyacınız olan az çabayla büyük etki sağlayan araçları ele aldık.

Bu gönderi, optimizasyon yapmanız gerektiğinde bu kaynakları tekrar ziyaret etmenizi sağlayacak dizininiz ve yol haritanız olarak işlev görür. Birlikte çıktığımız bu yolculuktan çıkarabileceğimiz beş önemli dersi aşağıda bulabilirsiniz.

Uygulamanızı hızlandırmak için R8 optimize ediciyi kullanma

En etkili ve az çaba gerektiren değişiklik, R8 optimize edicisini tamamen etkinleştirmektir. Bu özellik yalnızca uygulama boyutunu küçültmekle kalmaz. Aynı zamanda, kodunuzu verimlilik için temelden yeniden yazmak üzere derin ve programın tamamını kapsayan optimizasyonlar gerçekleştirir. Keep kurallarınızı yeniden gözden geçirin ve R8'i mühendislik görevlerinize geri getirin.

R8 optimizasyon aracıyla ilgili güncellenmiş ve genişletilmiş dokümanlarımızdan yararlanabilirsiniz.

Reddit, R8 tam modunu etkinleştirdikten sonra % 40 daha hızlı sıfırdan başlatma ve % 30 daha az ANR hatası gözlemledi.

Örnek olayın tamamını blogumuzda okuyabilirsiniz.

image.png

Disney+'taki mühendisler, uygulama performansına yatırım yapıyor ve uygulamanın kullanıcı deneyimini optimize ediyor. Bazen görünüşte küçük olan değişiklikler bile büyük bir etki yaratabilir. Ekip, R8 yapılandırmasını incelerken -dontoptimize işaretinin kullanıldığını tespit etti. Disney+ ekibi, bu işareti kaldırarak optimizasyonları etkinleştirdikten sonra uygulamasının performansında önemli iyileşmeler gördü.

image.png

Bu nedenle, bir dahaki sefere biri size uygulama performansını artırmak için neler yapabileceğinizi sorarsa onu bu gönderiye yönlendirmeniz yeterlidir.

1. Gün blog yayınımızdan daha fazla bilgi edinin: Uygulamanızı küçültmek, optimize etmek ve hızlandırmak için R8'i kullanma

Daha iyi performans için size yol gösteriyoruz

Temel profiller, tam zamanında derleme ihtiyacını etkili bir şekilde ortadan kaldırarak başlatma hızını, kaydırmayı, animasyonu ve genel oluşturma performansını iyileştirir. Başlangıç Profilleri, uygulamanızın classes.dex dosyalarına akıllı bir düzen getirerek uygulama başlangıcını daha da hafifletir.

Temel profillerin uygulama performansı açısından ne kadar önemli olduğunu öğrenmek için Meta'nın mühendislik blogunu okuyun. Burada, temel profillerin uygulamalarındaki çeşitli kritik performans metriklerini %40'a kadar nasıl iyileştirdiği paylaşılıyor.

Jetpack Compose 1.10'da Jetpack Compose'un performansını artırmaya devam ediyoruz. Duraklatılabilir kompozisyon ve özelleştirilebilir önbellek penceresi gibi özellikler, karmaşık liste öğeleriyle çalışırken kaydırma sırasında duraklamayı önlemek için çok önemlidir.Bu konuyu daha ayrıntılı olarak açıkladığımız #TheAndroidShow'un en son bölümüne göz atın.

Çarşamba günkü blog yayınımızda daha fazla bilgi edinin: Daha Derin Performans Değerlendirmeleri

Performansı ölçmek çok kolay

Ölçmediğiniz şeyi yönetemezsiniz. Performans Dengeleme Kılavuzumuz, ölçüm yolculuğunuzu beş adıma ayırır. Bu adımlar, kolayca erişilebilen verilerle başlar ve gelişmiş yerel araçlarla devam eder.

1. seviyeden başlayarak Android vitals'dan kolayca erişilebilen verileri nasıl kullanacağınızı öğreteceğiz. Android vitals, ANR'ler, çökmeler ve aşırı pil kullanımıyla ilgili saha verileri sağlar.

Ayrıca seviye atlamayı da öğreneceksiniz. Örneğin, uygulamanızın performansındaki değişiklikleri doğru bir şekilde ölçmek ve doğrulamak için Jetpack Macrobenchmark ve yeni UiAutomator 2.4 API'yi kullanarak yerel performans testiyle 3. seviyeye nasıl ulaşacağınızı göstereceğiz. 

Perşembe günkü blog yayınımızdan daha fazla bilgi edinebilirsiniz: [Perşembe günkü blog yayınının bağlantısı: Performans yolculuğunuz için seviye belirleme kılavuzu]

Hata ayıklama performansında iyileştirme

Gelişmiş optimizasyon, okunamaz kilitlenme raporları anlamına gelmemelidir. Yeni özellikler, R8 ve arka plan görevlerinde güvenle hata ayıklamanıza yardımcı olmak için tasarlandı:

Otomatik Logcat Retrace

Android Studio Narwhal'dan itibaren, yığın izlemeleri Logcat penceresinde otomatik olarak kod çözme işlemine tabi tutulabilir. Bu sayede, üretime hazır bir derlemedeki kilitlenmeleri hemen görebilir ve hatalarını ayıklayabilirsiniz.

Keep Kurallarını Daraltma

Salı günü, çalışma zamanı çökmelerini düzeltmek için gereken Keep kurallarını açıkladık ve çok geniş joker karakterler yerine üye düzeyinde belirli kurallar yazmanın önemini vurguladık. Bu önemli bir konu olduğundan sizin için bir video da hazırladık.

Android Studio Otter 3 Feature Drop, geniş Keep kuralları için yeni hata analizi kontrolüyle bu konuda da size yardımcı olur.

image.png

Ayrıca, yapılandırmayı güvenle doğru şekilde yapmanıza yardımcı olmak için R8 yapılandırmanızı test etme ve sorun giderme ile ilgili yeni yönergeler yayınladık.

Salı günkü blog yayınımızdan daha fazla bilgi edinin: R8 Keep kurallarını yapılandırma ve sorunlarını giderme

Arka planda çalışma

WorkManager ile görev planlarken karşılaşabileceğiniz yaygın senaryolarda hata ayıklama hakkında rehberlik paylaştık.

Background Task Inspector, WorkManager görevlerinin görsel bir temsilini ve grafik görünümünü sunarak planlanmış çalışmanın neden geciktiği veya başarısız olduğu konusunda hata ayıklamanıza yardımcı olur. Yenilenen Arka Planda Çalışma dokümanları açılış sayfamızda ise belirli kullanım alanları için optimize edilmiş, göreve özel API'ler vurgulanıyor. Bu sayede daha güvenilir bir yürütme elde edebilirsiniz.
 

Çarşamba günkü blog yayınımızdan daha fazla bilgi edinin: Arka planda çalışan işlerin performansıyla ilgili dikkat edilmesi gereken noktalar

Performans optimizasyonu sürekli devam eden bir süreçtir

Bu hafta R8 tam modunu etkinleştirme yarışmamıza başarıyla katıldıysanız bir sonraki adımınız, Uygulama Performans Puanı'nı kullanarak performansı ürün yol haritanıza entegre etmektir. Bu standartlaştırılmış çerçeve, sürekli iyileştirme için en etkili işlem öğelerini bulmanıza yardımcı olur.

Haftayı, mühendislerin R8, Profile Guided Optimizations ve daha fazlası hakkındaki en zor sorularınızı yanıtladığı #AskAndroid Live soru-cevap oturumuyla tamamladık. Kaçırdıysanız tekrarını izleyebilirsiniz.

Bize katıldığınız için teşekkür ederiz. Şimdi oluşturmaya başlayın ve bu ivmeyi sürdürün.

Yazan:

Okumaya devam edin