Zanim zaczniesz
Jeśli jeszcze nie masz tego za sobą, dodaj Firebase do swojego projektu na Androida.
Krok 1. Dodaj do aplikacji pakiet SDK Performance Monitoring
Gdy dodasz pakiet SDK Performance Monitoring, Firebase automatycznie rozpocznie zbieranie danych dane renderowania ekranu i danych aplikacji z cyklem życia aplikacji (np. czas uruchomienia aplikacji). Do aby umożliwić Firebase monitorowanie żądań sieciowych, musisz również dodać monitorowanie wydajności Wtyczka Gradle (następny krok).
w pliku Gradle (na poziomie aplikacji) modułu, (zwykle
<project>/<app-module>/build.gradle.kts
lub<project>/<app-module>/build.gradle
), dodać zależność z biblioteką monitorowania wydajności na Androida. Zalecamy użycie metody Funkcja BoM Firebase na Androida aby kontrolować obsługę wersji biblioteki.dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.1.2")) // Add the dependency for the Performance Monitoring library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf") }
Korzystając z BM Firebase Android BoM, Twoja aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.
(Wersja alternatywna) Dodawanie zależności biblioteki Firebase bez korzystania z BM
Jeśli nie chcesz używać Firebase BoM, musisz określić każdą wersję biblioteki Firebase w wierszu zależności.
Pamiętaj, że jeśli używasz wielu bibliotek Firebase w aplikacji, zalecamy korzystanie z BoM do zarządzania wersjami biblioteki, dzięki czemu wszystkie wersje
dependencies { // Add the dependency for the Performance Monitoring library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf:21.0.1") }
Ponownie skompiluj aplikację.
Krok 2. Dodaj do aplikacji wtyczkę do monitorowania wydajności
Gdy dodasz wtyczkę do monitorowania wydajności do monitorowania wydajności, Firebase automatycznie uruchomi się zbieranie danych dla Żądania sieciowe HTTP/S. umożliwia również instrumentowanie niestandardowych logów czasu za pomocą Adnotacja@AddTrace.
w pliku Gradle na poziomie głównym (na poziomie projektu); (
<project>/build.gradle.kts
lub<project>/build.gradle
), dodaj Wtyczka do monitorowania wydajności:Kotlin
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id("com.android.application") version "7.3.0" apply false // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.4.2" apply false // Add the dependency for the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") version "1.4.2" apply false }
Groovy
plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id 'com.android.application' version '7.3.0' apply false // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.4.2' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '1.4.2' apply false }
w pliku Gradle modułu (na poziomie aplikacji); (zwykle
<project>/<app-module>/build.gradle.kts
lub<project>/<app-module>/build.gradle
), dodaj funkcję Monitorowanie wydajności Wtyczka Gradle:Kotlin
plugins { id("com.android.application") // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") ... }
Groovy
plugins { id 'com.android.application' // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' ... }
Ponownie skompiluj aplikację.
Krok 3. Wygeneruj zdarzenia dotyczące skuteczności na potrzeby początkowego wyświetlania danych
Firebase rozpocznie przetwarzanie zdarzeń, gdy dodasz pakiet SDK do . Jeśli nadal tworzysz aplikację lokalnie, użyj jej, aby wygenerować zdarzenia do początkowego zbierania i przetwarzania danych.
Generowanie zdarzeń przez przełączanie aplikacji między tłem a pierwszym planem wielokrotnie i korzystając z aplikacji, przechodząc na różne ekrany, lub uruchamiać żądania sieciowe.
Otwórz panel Skuteczność. w konsoli Firebase. Początkowe dane powinny się wyświetlić w ciągu za kilka minut.
Jeśli nie widzisz swoich danych początkowych, zapoznaj się z sekcją dotyczącą rozwiązywania problemów .
Krok 4. (Opcjonalnie) Wyświetl komunikaty z dziennika dotyczące zdarzeń związanych z wydajnością
Włącz logowanie debugowania na potrzeby Monitorowania wydajności w czasie kompilacji, dodając
<meta-data>
do plikuAndroidManifest.xml
aplikacji, na przykład:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
Sprawdź, czy w komunikatach logu nie ma żadnych komunikatów o błędach.
Monitorowanie wydajności oznacza komunikaty logu tagiem
FirebasePerformance
. Korzystanie z Logcat możesz w szczególności zobaczyć śledzenie czasu trwania i sieć HTTP/S, żądania logowania, uruchamiając następujące polecenie:adb logcat -s FirebasePerformance
Sprawdź następujące typy logów, które wskazują, że Monitorowanie wydajności jest rejestrowanie zdarzeń wydajności:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
Kliknij adres URL, aby wyświetlić dane w konsoli Firebase. Może to chwilę potrwać momentu aktualizacji danych na pulpicie nawigacyjnym.
Jeśli aplikacja nie rejestruje zdarzeń związanych z wydajnością, zapoznaj się z informacjami na temat rozwiązywania problemów .
Krok 5. (Opcjonalnie) Dodaj niestandardowe monitorowanie dla określonego kodu
Aby monitorować dane o wydajności powiązane z określonym kodem w aplikacji, możesz: instrumentów niestandardowych logów czasu.
Dzięki niestandardowemu śledzeniu kodu możesz sprawdzić, ile czasu zajmuje uruchomienie aplikacji określonego zadania lub zestawu zadań, np. wczytanie zestawu obrazów lub wysłanie zapytań; w bazie danych. Domyślnym wskaźnikiem niestandardowego śledzenia kodu jest jego czas trwania, ale możesz też dodawać wskaźniki niestandardowe, takie jak trafienia w pamięci podręcznej i ostrzeżenia związane z pamięcią.
W kodzie definiujesz początek i koniec niestandardowego logu czasu (oraz dodaj dowolne wymagane dane niestandardowe) za pomocą interfejsu API dostępnego w pakiecie SDK Performance Monitoring. W przypadku aplikacji na Androida możesz też monitorować czas trwania określonych metod za pomocą Adnotacja@AddTrace.
Zapoznaj się z artykułem Dodawanie monitorowania dla określonego kodu. , by dowiedzieć się więcej o tych funkcjach i sposobach ich dodawania do aplikacji.
Krok 6. Wdróż aplikację i sprawdź jej wyniki
Po sprawdzeniu monitorowania wydajności na co najmniej jednym urządzeniu testowym możesz: wdrożyć zaktualizowaną wersję aplikacji u użytkowników.
Dane o skuteczności możesz sprawdzać w Panel Skuteczność w konsoli Firebase.
Znane problemy
Wtyczka do monitorowania wydajności w wersji 1.1.0 może powodować niezgodność w Guavie który daje taki błąd:
Error:Execution failed for task ':app:packageInstantRunResourcesDebug'. > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
Jeśli widzisz ten błąd:
Uaktualnij wtyczkę Monitorowanie wydajności do wersji 1.1.1 lub nowszej (najnowsza jest 1.4.2).
Zastąp wiersz zależności wtyczki Monitorowanie wydajności w Plik Gradle na poziomie głównym (na poziomie projektu) (
<project>/build.gradle.kts
) lub<project>/build.gradle
) w ten sposób:Kotlin
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath("com.google.firebase:perf-plugin:1.1.0") { exclude(group = "com.google.guava", module = "guava-jdk5") } } }
Groovy
buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath('com.google.firebase:perf-plugin:1.1.0') { exclude group: 'com.google.guava', module: 'guava-jdk5' } } }
Monitorowanie wydajności raportuje całkowity rozmiar ładunku dla żądań sieciowych HTTP na podstawie na wartości ustawionej w nagłówku HTTP content-length. Ta wartość może nie być zawsze podawać dokładne informacje.
Monitorowanie wydajności obsługuje tylko główny proces w wieloprocesowych aplikacjach na Androida.
Dalsze kroki
Sprawdź i uruchom Przykładowy kod monitorowania wydajności na Androida na GitHubie.
Więcej informacji o danych zbieranych automatycznie przez Monitorowanie wydajności:
- dane związane z cyklem życia aplikacji, takie jak: czas uruchamiania aplikacji
- dane na potrzeby renderowania ekranu w aplikacji;
- Dane o wysłanych żądaniach sieciowych HTTP/S przez Twoją aplikację
wyświetlać, śledzić i filtrować dane z danymi o wydajności w konsoli Firebase.
Dodaj monitorowanie dotyczące określonych zadań lub przepływów pracy w aplikacji przez instrumenting niestandardowych logów czasu.