1. Genel Bakış
Bu kod laboratuvarında, bir özelliğin kullanıma sunulması sırasında uygulamanızın performansını nasıl izleyeceğinizi öğreneceksiniz. Örnek uygulamamız temel işlevlere sahip olacaktır ve bir Firebase Remote Config bayrağına dayalı olarak farklı bir arka plan görüntüsü gösterecek şekilde ayarlanmıştır. Uygulamanın performansını izlemek, uygulamada bir yapılandırma değişikliği yayınlamak, etkiyi izlemek ve performansı nasıl geliştirebileceğimizi görmek için izlemeleri izlemeyi gözden geçireceğiz.
ne öğreneceksin
- Kullanıma hazır ölçümler (uygulama başlangıç zamanı ve yavaş veya donmuş kareler gibi) elde etmek için Firebase Performance Monitoring'i mobil uygulamanıza nasıl ekleyebilirsiniz?
- Kullanıcı yolculuklarınızın kritik kod yollarını anlamak için özel izler nasıl eklenir?
- Metriklerinizi anlamak ve bir özelliğin kullanıma sunulması gibi önemli değişiklikleri izlemek için Performans İzleme panosu nasıl kullanılır?
- Temel ölçümlerinizi izlemek için performans uyarıları nasıl kurulur?
- Firebase Remote Config değişikliği nasıl kullanıma sunulur?
Önkoşullar
- Android Studio 4.0 veya üstü
- API seviyesi 16 veya üstü olan bir Android emülatörü.
- Java sürüm 8 veya üstü
- Firebase Remote Config hakkında temel bilgiler
2. Örnek projeyi kurun
kodu indir
Bu codelab için örnek kodu klonlamak üzere aşağıdaki komutu çalıştırın. Bu, makinenizde codelab-perf-rc-android
adlı bir klasör oluşturacaktır:
$ git clone https://github.com/FirebaseExtended/codelab-feature-rollout-performance.git
Makinenizde Git yoksa kodu doğrudan GitHub'dan da indirebilirsiniz.
firebase-perf-rc-android-start
klasörü altındaki projeyi Android Studio'ya aktarın. Muhtemelen bazı çalışma zamanı istisnaları veya eksik bir google-services.json
dosyası hakkında bir uyarı göreceksiniz. Bunu bir sonraki bölümde düzelteceğiz.
Bu kod laboratuvarında, Android uygulamanızı bir Firebase projesine kaydetmek ve gerekli Firebase yapılandırma dosyalarını, eklentileri ve bağımlılıkları Android projenize eklemek için Firebase Assistant eklentisini kullanacaksınız - tümü Android Studio içinden !
Uygulamanızı Firebase'e bağlayın
- Android Studio'nun ve Firebase Assistant'ın en son sürümlerini kullandığınızdan emin olmak için Android Studio / Yardım > Güncellemeleri kontrol et'e gidin.
- Yardımcı bölmesini açmak için Araçlar > Firebase'i seçin.
- Uygulamanıza eklemek için Performance Monitoring'i seçin, ardından Performance Monitoring'i kullanmaya başlayın 'ı tıklayın.
- Android projenizi Firebase'e bağlamak için Firebase'e Bağlan'ı tıklayın (bu, tarayıcınızda Firebase konsolunu açacaktır) .
- Firebase konsolunda Proje ekle'yi tıklayın, ardından bir Firebase proje adı girin (zaten bir Firebase projeniz varsa, bunun yerine mevcut projeyi seçebilirsiniz) . Devam'ı tıklayın ve Firebase projesini ve yeni bir Firebase Uygulamasını oluşturmak için şartları kabul edin.
Daha sonra, yeni Firebase Uygulamanızı Android Studio projenize bağlamak için bir iletişim kutusu görmelisiniz.
- Bağlan'ı tıklayın.
- Android Studio'yu açın. Asistan bölmesinde, uygulamanızın Firebase'e bağlı olduğunun onayını göreceksiniz.
Uygulamanıza Performans İzleme ekleyin
Android Studio'daki Asistan bölmesinde, Uygulamanıza Performans İzleme Ekle'yi tıklayın.
Tüm gerekli bağımlılıkların eklendiğinden emin olmak için Android Studio'nun uygulamanızı senkronize etmesi gereken Değişiklikleri Kabul Et iletişim kutusu görmelisiniz.
Son olarak, Android Studio'daki Asistan bölmesinde tüm bağımlılıkların doğru şekilde kurulduğuna dair başarı mesajını görmelisiniz.
Ek bir adım olarak, "(İsteğe bağlı) Hata ayıklama günlüğünü etkinleştir" adımındaki talimatları izleyerek hata ayıklama günlüğünü etkinleştirin . Aynı talimatlar genel belgelerde de mevcuttur.
3. Uygulamayı çalıştırın
Artık uygulamanızın modül (uygulama düzeyi) dizininde google-services.json
dosyasını görmelisiniz ve uygulamanız şimdi derlenmelidir. Android Studio'da, uygulamayı Android öykünücünüzde oluşturmak ve çalıştırmak için Çalıştır > "Uygulamayı çalıştır" ı tıklayın.
Uygulama çalışırken, önce şöyle bir açılış ekranı görmelisiniz:
Ardından, birkaç saniye sonra, varsayılan görselin bulunduğu ana sayfa görüntülenecektir:
Kaputun altında neler oluyor?
Açılış ekranı, SplashScreenActivity'de uygulanır ve aşağıdakileri yapar:
-
onCreate()
içinde, Firebase Remote Config ayarlarını başlatıyoruz ve bu codelab'de daha sonra Remote Config kontrol panelinde ayarlayacağınız yapılandırma değerlerini getiriyoruz. -
executeTasksBasedOnRC()
içinde,seasonal_image_url
bayrağının yapılandırma değerini okuruz. Yapılandırma değeri tarafından bir URL sağlanırsa, görüntüyü senkronize olarak indiririz. - İndirme tamamlandıktan sonra, uygulama MainActivity'ye gider ve
SplashScreenActivity
sonlandırmak içinfinish()
öğesini çağırır.
MainActivity
, Remote Config ile seasonal_image_url
tanımlanırsa, özellik etkinleştirilecek ve indirilen görüntü ana sayfanın arka planı olarak görüntülenecektir. Aksi takdirde, varsayılan görüntü (yukarıda gösterilen) görüntülenecektir.
4. Remote Config'i kurun
Artık uygulamanız çalışıyor, yeni özellik bayrağını ayarlayabilirsiniz.
- Firebase konsolunun sol panelinde Engage bölümünü bulun ve ardından Remote Config öğesini tıklayın.
- Konfigürasyon formunu açmak için Konfigürasyon oluştur düğmesini tıklayın ve
seasonal_image_url
parametre anahtarı olarak ekleyin. - Açıklama ekle 'yi tıklayın, ardından şu açıklamayı girin:
Shows a seasonal image (replaces default) in the main page when the restaurant list is empty.
- Yeni ekle -> Koşullu değer -> Yeni koşul oluştur ' u tıklayın.
- Koşul adı olarak
Seasonal image rollout
girin. -
Applies if...
bölümü için,User in random percentile <= 0%
seçin. (Daha sonraki bir adımda kullanıma sunmaya hazır olana kadar özelliği devre dışı bırakmak istiyorsunuz.) - Koşul oluştur'u tıklayın. Bu koşulu daha sonra yeni özelliği kullanıcılarınıza sunmak için kullanacaksınız.
- İlk parametrenizi oluşturun formunu açın ve Mevsimsel görüntü sunumu için Değer alanını bulun. Sezon görselinin indirileceği URL'yi girin:
https://images.unsplash.com/photo-1552691021-7043334e0b51
- Varsayılan değeri boş bir dize olarak bırakın. Bu, bir URL'den indirilen bir resim yerine kod tabanındaki varsayılan resmin gösterileceği anlamına gelir.
- Kaydet'i tıklayın.
Yeni yapılandırmanın taslak olarak oluşturulduğunu görebilirsiniz.
- Uygulamanızı güncellemek için Değişiklikleri yayınla'yı tıklayın ve üst kısımdaki değişiklikleri onaylayın.
5. Veri yükleme süresi için izleme ekleyin
Uygulamanız, MainActivity
göstermeden önce bazı verileri önceden yükler ve bu işlemi gizlemek için bir açılış ekranı görüntüler. Kullanıcılarınızın bu ekranda çok uzun süre beklemesini istemezsiniz, bu nedenle normalde açılış ekranının ne kadar süreyle görüntülendiğini izlemek faydalıdır.
Firebase Performance Monitoring, tam da bunu yapmanın bir yolunu sunar. Verilerin yüklenme süresi ve yeni özelliğinizin işlem süresi gibi, uygulamanızdaki belirli bir kodun performansını izlemek için özel kod izleme araçları kullanabilirsiniz.
Açılış ekranının ne kadar süreyle görüntülendiğini takip etmek için, açılış ekranını uygulayan Activity
olan SplashScreenActivity
özel bir kod izlemesi ekleyeceksiniz.
-
splash_screen_trace
adlı özel bir kod izlemeyi başlatın, oluşturun ve başlatın:
SplashScreenActivity.java
// ...
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;
// ...
public class SplashScreenActivity extends AppCompatActivity {
private static final String TAG = "SplashScreenActivity";
private static final String SEASONAL_IMAGE_URL_RC_FLAG = "seasonal_image_url";
// TODO: Initialize splash_screen_trace
private final Trace splashScreenTrace = FirebasePerformance.startTrace("splash_screen_trace");
// ...
}
-
SplashScreenActivity
onDestroy()
yönteminde izlemeyi sonlandırın:
SplashScreenActivity.java
@Override
protected void onDestroy() {
super.onDestroy();
// TODO: Stop the splash_screen_trace here
splashScreenTrace.stop();
}
Yeni özelliğiniz bir görüntüyü indirip işlediğinden, özelliğinizin SplashScreenActivity
eklediği ek süreyi izleyen ikinci bir özel kod izi ekleyeceksiniz.
-
splash_seasonal_image_processing
adlı özel bir kod izlemeyi başlatın, oluşturun ve başlatın:
SplashScreenActivity.java
private void executeTasksBasedOnRC(FirebaseRemoteConfig rcConfig) {
String seasonalImageUrl = rcConfig.getString(SEASONAL_IMAGE_URL_RC_FLAG);
Log.d(TAG, SEASONAL_IMAGE_URL_RC_FLAG + ": " + seasonalImageUrl);
if (!seasonalImageUrl.isEmpty()) {
// TODO: Start the splash_seasonal_image_processing here
final Trace seasonalImageProcessingTrace = FirebasePerformance
.startTrace("splash_seasonal_image_processing");
// ...
}
}
- İzlemeyi,
RequestListener
öğesinin hemonLoadFailed()
hem deonResourceReady()
yöntemlerinde sonlandırın:
SplashScreenActivity.java
Glide.with(SplashScreenActivity.this.getApplicationContext())
.asBitmap()
.load(seasonalImageUrl)
.signature(new ObjectKey(Utils.getCacheUUID()))
.listener(new RequestListener<Bitmap>() {
@Override
public boolean onLoadFailed(
@Nullable GlideException e,
Object model, Target<Bitmap> target,
boolean isFirstResource) {
// TODO: Stop the splash_seasonal_image_processing here
seasonalImageProcessingTrace.stop();
launchMainActivity();
return true;
}
@Override
public boolean onResourceReady(Bitmap resource, Object model,
Target<Bitmap> target, DataSource dataSource,
boolean isFirstResource) {
// TODO: Stop the splash_seasonal_image_processing here
seasonalImageProcessingTrace.stop();
launchMainActivity();
return true;
}
})
.preload();
Açılış ekranı süresini ( splash_screen_trace)
ve yeni özelliğin işlem süresini ( splash_seasonal_image_processing
) takip etmek için özel kod izlemeleri eklediğinize göre, uygulamayı Android Studio'da yeniden çalıştırın . Logging trace metric: splash_screen_trace
ve ardından izlemenin süresi. Henüz yeni özelliği etkinleştirmediğiniz için splash_seasonal_image_processing
için bir günlük mesajı görmezsiniz.
6. İzlemeye özel bir öznitelik ekleyin
Özel kod izlemeleri için Performance Monitoring, Firebase konsolundaki izleme verilerini filtreleyebilmeniz için varsayılan öznitelikleri (uygulama sürümü, ülke, cihaz vb. yaygın meta veriler) otomatik olarak günlüğe kaydeder. Ayrıca özel nitelikler ekleyebilir ve izleyebilirsiniz.
Uygulamanıza, açılış ekranı süresini ve yeni özelliğin işlem süresini izlemek için az önce iki özel kod izi eklediniz. Bu süreleri etkileyebilecek bir faktör, görüntülenen görüntünün varsayılan görüntü olup olmadığı veya görüntünün bir URL'den indirilmesi gerekip gerekmediğidir. Ve kim bilir - sonunda bir görseli indirdiğiniz farklı URL'lere sahip olabilirsiniz.
Bu nedenle, bu özel kod izlerine sezonluk resim URL'sini temsil eden özel bir özellik ekleyelim. Bu şekilde, süre verilerini daha sonra bu değerlere göre filtreleyebilirsiniz.
-
executeTasksBasedOnRC
yönteminin başınasplash_screen_trace
için özel özniteliği (seasonal_image_url_attribute
) ekleyin:
SplashScreenActivity.java
private void executeTasksBasedOnRC(FirebaseRemoteConfig rcConfig) {
String seasonalImageUrl = rcConfig.getString(SEASONAL_IMAGE_URL_RC_FLAG);
Log.d(TAG, SEASONAL_IMAGE_URL_RC_FLAG + ": " + seasonalImageUrl);
// TODO: Add a custom attribute "seasonal_image_url_attribute" to splash_screen_trace
if (seasonalImageUrl.isEmpty()) {
splashScreenTrace.putAttribute("seasonal_image_url_attribute", "unset");
} else {
splashScreenTrace.putAttribute("seasonal_image_url_attribute", seasonalImageUrl);
}
// ...
}
-
startTrace("splash_seasonal_image_processing")
çağrısından hemen sonrasplash_seasonal_image_processing
için aynı özel niteliği ekleyin:
SplashScreenActivity.java
if (!seasonalImageUrl.isEmpty()) {
// TODO: Start the splash_seasonal_image_processing here
final Trace seasonalImageProcessingTrace = FirebasePerformance
.startTrace("splash_seasonal_image_processing");
// TODO: Add a custom attribute "seasonal_image_url_attribute" to splash_seasonal_image_processing
seasonalImageProcessingTrace
.putAttribute("seasonal_image_url_attribute", seasonalImageUrl);
// ...
}
Artık her iki özel izlemeniz ( splash_screen_trace
ve splash_seasonal_image_processing
) için özel bir öznitelik ( seasonal_image_url_attribute
) eklediğinize göre, uygulamayı Android Studio'da yeniden çalıştırın . Setting attribute 'seasonal_image_url_attribute' to 'unset' on trace 'splash_screen_trace'.
Henüz Remote Config parametresi seasonImageUrl'yi etkinleştirmediniz, bu nedenle öznitelik değeri unset
durumda.
Performance Monitoring SDK, izleme verilerini toplayacak ve bunları Firebase'e gönderecektir. Verileri, codelab'in bir sonraki adımında ayrıntılı olarak açıklayacağımız Firebase konsolunun Performans kontrol panelinde görüntüleyebilirsiniz.
7. Performans İzleme panonuzu yapılandırın
Özelliğinizi izlemek için kontrol panelinizi yapılandırın
Firebase konsolunda , Friendly Eats uygulamanızın bulunduğu projeyi seçin.
Sol panelde, Yayınla ve İzle bölümünü bulun, ardından Performans 'ı tıklayın.
Metrik panonuzdaki ilk veri noktalarınızla birlikte Performans kontrol panelinizi görmelisiniz! Performance Monitoring SDK, uygulamanızdan performans verilerini toplar ve toplandıktan birkaç dakika sonra görüntüler.
Bu ölçüm panosu, uygulamanız için temel ölçümleri takip edebileceğiniz yerdir. Varsayılan görünüm, uygulama başlangıç zamanı izlemenizin süresini içerir, ancak en çok önemsediğiniz metrikleri ekleyebilirsiniz. Eklediğiniz yeni özelliği takip ettiğiniz için kontrol panelinizi, splash_screen_trace
özel kod izlemesinin süresini gösterecek şekilde uyarlayabilirsiniz.
- Boş Bir Metrik Seç kutularından birine tıklayın.
- İletişim penceresinde, Özel izlerin izleme türünü ve
splash_screen_trace
izleme adını seçin.
- Metrik seç 'e tıklayın ve
splash_screen_trace
süresinin kontrol panelinize eklendiğini görmelisiniz!
Performanslarının zaman içinde ve hatta farklı sürümlerde nasıl değiştiğini hızlı bir şekilde görebilmek için önem verdiğiniz diğer metrikleri eklemek için aynı adımları kullanabilirsiniz.
Metrik panosu, kullanıcılarınızın deneyimlediği temel metriklerin performansını izlemek için güçlü bir araçtır . Bu codelab için, dar bir zaman aralığında küçük bir veri grubunuz var, bu nedenle özelliğin kullanıma sunulmasının performansını anlamanıza yardımcı olacak diğer pano görünümlerini kullanıyor olacaksınız.
8. Özelliğinizi kullanıma sunun
Artık izlemenizi kurduğunuza göre, daha önce kurduğunuz Firebase Remote Config değişikliğini ( seasonal_image_url)
kullanıma sunmaya hazırsınız.
Bir değişikliği kullanıma sunmak için Firebase konsolundaki Remote Config sayfasına geri dönerek hedefleme koşulunuzun kullanıcı yüzdelik dilimini artıracaksınız. Normalde, yeni özellikleri kullanıcıların küçük bir kısmına sunar ve yalnızca herhangi bir sorun olmadığından emin olduğunuzda artırırsınız. Ancak bu kod laboratuvarında, uygulamanın tek kullanıcıları sizsiniz, dolayısıyla yüzdelik dilimini %100 olarak değiştirebilirsiniz.
- Sayfanın üst kısmındaki Koşullar sekmesini tıklayın.
- Daha önce eklediğiniz
Seasonal image rollout
koşulunu tıklayın. - Yüzdeliği %100 olarak değiştirin.
- Koşulu kaydet'i tıklayın.
- Değişiklikleri yayınla'yı tıklayın ve değişiklikleri onaylayın.
Android Studio'ya geri döndüğünüzde, yeni özelliği görmek için öykünücünüzdeki uygulamayı yeniden başlatın. Açılış ekranından sonra, yeni boş durum ana ekranını görmelisiniz!
9. Performans değişikliklerini kontrol edin
Şimdi Firebase konsolundaki Performans kontrol panelini kullanarak açılış ekranı yükleme performansını kontrol edelim. Kod laboratuvarının bu adımında, performans verilerini görüntülemek için kontrol panelinin farklı bölümlerini kullanacaksınız.
- Ana Pano sekmesinde, izler tablosuna gidin, ardından Özel izler sekmesine tıklayın. Bu tabloda, daha önce eklediğiniz özel kod izlerini ve kullanıma hazır bazı izleri göreceksiniz.
- Artık yeni özelliği etkinleştirdiğinize göre, görüntünün indirilmesi ve işlenmesi için geçen süreyi ölçen
splash_seasonal_image_processing
özel kod izlemesini arayın. İzlemenin Süre değerinden, bu indirme ve işlemenin önemli miktarda zaman aldığını görebilirsiniz.
-
splash_seasonal_image_processing
için verileriniz olduğundan, bu izlemenin süresini Gösterge Tablosu sekmesinin üst kısmındaki metrik panonuza ekleyebilirsiniz.
Daha önce olduğu gibi, boş Bir Metrik Seçin kutularından birine tıklayın. İletişim penceresinde, Özel izler izleme türünü ve splash_seasonal_image_processing
izleme adını seçin. Son olarak, bu metriği metrik panosuna eklemek için Metrik seç'e tıklayın.
- Farklılıkları daha fazla doğrulamak için
splash_screen_trace
verilerine daha yakından bakabilirsiniz. Metrik panosundasplash_screen_trace
kartını tıklayın, ardından Metrik ayrıntılarını görüntüle 'yi tıklayın.
- Ayrıntılar sayfasında, sol altta, daha önce oluşturduğunuz özel nitelik de dahil olmak üzere, özniteliklerin bir listesini göreceksiniz. Sağdaki her sezonluk resim URL'si için açılış ekranı süresini görüntülemek üzere
seasonal_image_url_attribute
özel özelliğini tıklayın:
- Açılış ekranı süre değerleriniz muhtemelen yukarıdaki ekran görüntüsündeki değerlerden biraz farklı olacaktır, ancak görsel bir URL'den indirildiğinde, varsayılan görseli kullanmaya kıyasla daha uzun bir süreye sahip olmalısınız ("unset" ile temsil edilir).
Bu kod laboratuvarında, bu daha uzun sürenin nedeni açık olabilir, ancak gerçek bir uygulamada bu kadar açık olmayabilir. Toplanan süre verileri, uygulamayı çeşitli ağ bağlantısı koşullarında çalıştıran farklı cihazlardan gelir ve bu koşullar beklediğinizden daha kötü olabilir. Bu gerçek bir dünya durumu olsaydı, bu sorunu nasıl araştıracağınıza bir bakalım.
- Pano ana sekmesine geri dönmek için sayfanın üst kısmındaki Performans'a tıklayın:
- Sayfanın altındaki izlemeler tablosunda Ağ istekleri sekmesine tıklayın. Bu tabloda, uygulamanızdan gelen tüm ağ isteklerinin,
images.unsplash.com/**
URL modeli dahil olmak üzere URL modellerinde toplandığını göreceksiniz. Bu yanıt süresinin değerini görüntünün indirilmesi ve işlenmesi için geçen toplam süre ile karşılaştırırsanız (yani,splash_seasonal_image_processing
izinin süresi), görüntünün indirilmesi için çok fazla zaman harcandığını görebilirsiniz.
Performans bulguları
Firebase Performance Monitoring'i kullanarak, yeni özellik etkinleştirildiğinde son kullanıcılar üzerinde aşağıdaki etkiyi gördünüz:
-
SplashScreenActivity
geçirilen süre arttı. -
splash_seasonal_image_processing
süresi çok uzundu. - Gecikme, görüntü indirme için yanıt süresinden ve görüntü için gereken karşılık gelen işleme süresinden kaynaklanıyordu.
Bir sonraki adımda, özelliği geri alarak ve özelliğin uygulanmasını nasıl iyileştirebileceğinizi belirleyerek performans üzerindeki etkiyi azaltacaksınız.
10. Özelliği geri alın
Açılış ekranı sırasında kullanıcılarınızın bekleme süresini artırmak istenmez. Remote Config'in en önemli avantajlarından biri, kullanıcılarınıza başka bir sürüm yayınlamak zorunda kalmadan sunumunuzu duraklatma ve tersine çevirme yeteneğidir. Bu, sorunlara (son adımda keşfettiğiniz performans sorunları gibi) hızla tepki vermenize ve mutsuz kullanıcı sayısını en aza indirmenize olanak tanır.
Hızlı bir azaltma olarak, kullanıma sunma yüzdelik dilimini tekrar 0
sıfırlarsınız, böylece tüm kullanıcılarınız varsayılan resmi yeniden görür:
- Firebase konsolundaki Remote Config sayfasına geri dönün.
- Sayfanın üst kısmındaki Koşullar'ı tıklayın.
- Daha önce eklediğiniz
Seasonal image rollout
koşuluna tıklayın. - Yüzdeliği %0 olarak değiştirin.
- Koşulu kaydet'i tıklayın.
- Değişiklikleri yayınla'yı tıklayın ve değişiklikleri onaylayın.
Uygulamayı Android Studio'da yeniden başlatın ve orijinal boş durum ana ekranını görmelisiniz:
11. Performans sorunlarını düzeltin
Kod laboratuvarında daha önce açılış ekranınız için bir resim indirmenin uygulamanızın yavaşlamasına neden olduğunu keşfettiniz. İndirilen resme daha yakından baktığınızda, görüntünün orijinal çözünürlüğü olan 2MB'ın üzerinde kullandığınızı görürsünüz! Performans sorununuz için hızlı bir düzeltme, görüntünün indirilmesinin daha kısa sürmesi için kaliteyi daha uygun bir çözünürlüğe düşürmektir.
Remote Config değerini yeniden kullanıma alın
- Firebase konsolundaki Remote Config sayfasına geri dönün.
-
seasonal_image_url
parametresi için Düzenle simgesini tıklayın. - Mevsimsel görüntü sunumu için Değeri
https://images.unsplash.com/photo-1552691021-7043334e0b51?w=640
olarak güncelleyin, ardından Kaydet 'i tıklayın.
- Sayfanın üst kısmındaki Koşullar sekmesine tıklayın.
- Sezonluk görsel sunumunu tıklayın, ardından yüzdelik dilimini tekrar %100'e ayarlayın.
- Koşulu kaydet'i tıklayın.
- Değişiklikleri yayınla düğmesine tıklayın.
12. Düzeltmeyi test edin ve uyarıları ayarlayın
Uygulamayı yerel olarak çalıştırın
Farklı bir indirme resmi URL'si kullanmak üzere ayarlanan yeni yapılandırma değeri ile uygulamayı tekrar çalıştırın. Bu sefer açılış ekranında geçirilen sürenin eskisinden daha kısa olduğunu fark edeceksiniz.
Değişikliklerin performansını görüntüleyin
Metriklerin nasıl göründüğünü görmek için Firebase konsolundaki Performans kontrol paneline geri dönün.
- Bu sefer ayrıntılar sayfasına gitmek için izler tablosunu kullanacaksınız. İzler tablosunun aşağısında, Özel izler sekmesinde, süre metriğinin daha ayrıntılı bir görünümünü tekrar görmek için özel iz
splash_seasonal_image_processing
tıklayın.
- Özel özniteliklerin dökümünü tekrar görmek için
seasonal_image_url_attribute
özel özniteliğini tıklayın. URL'lerin üzerine gelirseniz, boyutu küçültülmüş resim için yeni URL ile eşleşen bir değer görürsünüz:https://images.unsplash.com/photo-1552691021-7043334e0b51?w=640
(?w=640
ile) sonunda). Bu görselle ilişkilendirilen süre değeri, önceki görselin değerinden önemli ölçüde daha kısa ve kullanıcılarınız için daha kabul edilebilir!
- Artık açılış ekranınızın performansını iyileştirdiğinize göre, bir iz ayarladığınız eşiği aştığında sizi uyaracak uyarılar ayarlayabilirsiniz. Performans kontrol panelini açın ve splash_screen_trace için taşma menüsü (üç nokta) simgesini tıklayın ve Uyarı ayarları öğesini tıklayın.
- Süre uyarısını etkinleştirmek için geçiş düğmesine tıklayın. Eşik değerini, gördüğünüz değerin biraz üzerinde olacak şekilde ayarlayın, böylece sıçrama_ekran_trace'iniz eşiği aşarsa bir e-posta alırsınız.
- Uyarınızı oluşturmak için Kaydet'e tıklayın. İzler tablosuna gidin, ardından uyarınızın etkinleştirildiğini görmek için Özel izler sekmesine tıklayın!
13. Tebrikler!
Tebrikler! Firebase Performance Monitoring SDK'yı etkinleştirdiniz ve yeni bir özelliğin performansını ölçmek için izlemeler topladınız! Yeni bir özelliğin kullanıma sunulması için temel performans ölçümlerini izlediniz ve bir performans sorunu keşfedildiğinde hızlı bir şekilde tepki gösterdiniz. Tüm bunlar, Remote Config ile yapılandırma değişiklikleri yapma ve performans sorunlarını gerçek zamanlı olarak izleme yeteneği sayesinde mümkün oldu.
Neleri ele aldık
- Firebase Performance Monitoring SDK'sını uygulamanıza ekleme
- Belirli bir özelliği ölçmek için kodunuza özel kod izi ekleme
- Yeni bir özelliği kontrol etmek/kullanıma sunmak için bir Remote Config parametresi ve koşullu değer ayarlama
- Devreye alma sırasında sorunları belirlemek için performans izleme panosunun nasıl kullanılacağını anlama
- Uygulamanızın performansı belirlediğiniz eşiği geçtiğinde sizi bilgilendirmek için performans uyarıları ayarlama