Fully Optimized: Wrapping up Performance Spotlight Week
Okuma süresi: 3 dk.
Geçtiğimiz hafta, Android uygulamalarını daha hızlı, daha küçük ve daha kararlı hale getirmeye yardımcı olan en iyi uygulamaları ve yönergeleri paylaşmaya odaklandık. R8 optimize edicinin ve Profile Guided Optimizations'ın temel güçlerinden Jetpack Compose ile performans iyileştirmelerine ve uygulamanızın performansını artırmaya yönelik yeni bir kılavuza kadar, performanslı bir uygulama oluşturmak için ihtiyacınız olan düşük çaba, yüksek etki sağlayan araçları ele aldık.
Bu yayın, optimizasyon yapmanız gerektiğinde bu kaynakları tekrar ziyaret etmeniz için dizininiz ve yol haritanız olarak kullanılabilir. Birlikte çıktığımız bu yolculuktan çıkarabileceğimiz beş önemli ders var.
Uygulamanızı hızlandırmak için R8 optimize ediciyi kullanma
Yapabileceğiniz en etkili ve en az çaba gerektiren değişiklik, R8 optimize ediciyi tam olarak etkinleştirmektir. Yalnızca uygulama boyutunu küçültmekle kalmaz, aynı zamanda kodunuzu verimlilik için temelden yeniden yazmak üzere derin ve tüm programı kapsayan optimizasyonlar gerçekleştirir. Keep kurallarınızı tekrar gözden geçirin ve R8'i mühendislik görevlerinize geri ekleyin.
R8 optimizasyon aracıyla ilgili yeni güncellenen ve genişletilen dokümanlarımız size yardımcı olacaktır.
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.
Disney+ mühendisleri, uygulama performansına yatırım yapıyor ve uygulamanın kullanıcı deneyimini optimize ediyor. Bazen küçük görünen değişiklikler bile büyük bir etki yaratabilir. Ekip, R8 yapılandırmasını incelerken -dontoptimize işaretinin kullanıldığını fark etti. Bu işareti kaldırarak optimizasyonları etkinleştiren Disney+ ekibi, uygulamanın performansında önemli iyileşmeler gördü.
Bir dahaki sefere uygulama performansını artırmak için ne yapabileceğiniz sorulduğunda bu yayının bağlantısını paylaşabilirsiniz.
Daha fazla bilgi için 1. gün blogumuzu okuyun: Uygulamanızı küçültmek, optimize etmek ve hızlandırmak için R8'i kullanma
Daha iyi performans için size rehberlik etme
Baseline Profiles, 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şlatma işlemini daha da hafif hale getirir.
Temel Profiller'in uygulama performansı açısından ne kadar önemli olduğu hakkında daha fazla bilgi edinmek için Meta'nın mühendislik blogunu okuyun. Bu blogda, Temel Profiller'in uygulamalarındaki çeşitli kritik performans metriklerini %40'a varan oranda nasıl iyileştirdiği paylaşılıyor.
Jetpack Compose 1.10'da Jetpack Compose'u sizin için daha performanslı hale getirmeye devam ediyoruz. Duraklatılabilir oluşturma ve özelleştirilebilir önbellek penceresi gibi özellikler, karmaşık liste öğeleriyle çalışırken kaydırma sırasında takılma sorununu tamamen ortadan kaldırmak için çok önemlidir.Bu konuyu daha ayrıntılı olarak açıkladığımız #TheAndroidShow'un 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çemediğiniz şeyi yönetemezsiniz. Performans Seviyesi Belirleme Rehberimiz, ölçüm yolculuğunuzu beş adıma ayırır. Bu adımlar, kolayca erişilebilen verilerle başlar ve gelişmiş yerel araçlara kadar uzanır.
1. seviyeden başlayarak, ANR'ler, kilitlenmeler ve aşırı pil kullanımıyla ilgili saha verileri sağlayan Android vitals'daki hazır verileri nasıl kullanacağınızı öğreteceğiz.
Ayrıca seviye atlamanın yollarını 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 nasıl 3. seviyeye ulaşacağınızı göstereceğiz .
Daha fazla bilgi için perşembe günkü blog yayınımızı okuyun: [Link to Thursday's Blog: Leveling Guide for your Performance Journey]
Hata ayıklama performansı artık daha iyi
Gelişmiş optimizasyon, kilitlenme raporlarının okunamaz hale gelmesine neden olmamalıdır. Yeni özellikler, R8 ve arka plan çalışmalarında güvenle hata ayıklamanıza yardımcı olmak için tasarlanmıştır:
Otomatik Logcat Retrace
Android Studio Narwhal'dan itibaren, yığın izlemeler Logcat penceresinde otomatik olarak okunabilir hale getirilebilir. Bu sayede, üretime hazır bir derlemedeki kilitlenmeleri hemen görebilir ve hatalarını ayıklayabilirsiniz.
Daraltılmış Saklama Kuralları
Salı günü, çalışma zamanı kilitlenmelerini düzeltmek için gereken saklama kurallarını açıkladık ve aşırı geniş joker karakterler yerine üye düzeyinde özel kurallar yazmanın önemini vurguladık. Bu önemli bir konu olduğu için 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.
Ayrıca, R8 yapılandırmanızı 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ızda daha fazla bilgi edinin: R8 saklama kurallarını yapılandırma ve sorunlarını giderme
Arka Plan Çalışması
WorkManager ile görev planlarken karşılaşabileceğiniz yaygın senaryolarda hata ayıklama konusunda rehberlik sağladık.
Background Task Inspector, WorkManager görevlerinin görsel bir temsilini ve grafik görünümünü sunarak planlanan işlerin neden geciktiğini veya başarısız olduğunu anlamanıza yardımcı olur. Yenilenen Arka Plan Çalışması dokümanları açılış sayfamızda, belirli kullanım alanları için optimize edilmiş göreve özel API'ler vurgulanarak daha güvenilir bir yürütme elde etmenize yardımcı olunur.
Çarşamba günkü blog yayınımızdan daha fazla bilgi edinin: Arka plan çalışması performansıyla ilgili dikkat edilmesi gerekenler
Performans optimizasyonu devam eden bir süreçtir
Bu hafta R8 tam modunu etkinleştirme görevimizi başarıyla tamamladıysanız bir sonraki adımınız, Uygulama Performans Puanı'nı kullanarak performansı ürün yol haritanıza entegre etmek olmalıdır. Bu standartlaştırılmış çerçeve, sürekli iyileştirme için en yüksek etkiye sahip işlem öğelerini bulmanıza yardımcı olur.
Haftayı, mühendislerin R8, Profile Guided Optimization ve daha birçok konuda 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 koruyun.
-
Etkinlikler ve ProgramlarUygulamanızın performansını artırmak için yapabileceğiniz en etkili ve en az çaba gerektiren değişiklikle başlıyoruz: R8 optimizasyon aracını tam modda etkinleştirme.
Ben Weiss • Okuma süresi: 5 dk. -
Etkinlikler ve ProgramlarAndroid ekosistemi; telefonlar, katlanabilir cihazlar, tabletler, giyilebilir cihazlar, araç içi ekranlar, XR ve Googlebook'u kapsayan çok cihazlı bir gerçekliktir. Bu ortamda, kullanıcılara bulundukları her yerde ulaşmak için uyarlanabilir geliştirme temel bir unsurdur.
Rebecca Gutteridge • Okuma süresi: 3 dk. -
Etkinlikler ve ProgramlarBu yılki Android Dev Summit'te, Android'in geliştirici araçlarının temsilcilerinizle birlikte daha üretken olmanıza yardımcı olmak için nasıl geliştiğini paylaştık.
Adarsh Fernando • Okuma süresi: 10 dk.
En son Android geliştirici analizlerini haftalık olarak gelen kutunuza alın.