Zanim zaczniesz
Jeśli jeszcze tego nie zrobiłeś, dodaj Firebase do swojego projektu Apple .
Krok 1 : Dodaj monitorowanie wydajności do swojej aplikacji
Po dodaniu pakietu SDK do monitorowania wydajności Firebase automatycznie zaczyna zbierać dane dotyczące renderowania ekranu Twojej aplikacji , dane związane z cyklem życia aplikacji (takie jak czas uruchomienia aplikacji ) oraz dane dotyczące żądań sieciowych HTTP/S .
Użyj Menedżera pakietów Swift, aby zainstalować i zarządzać zależnościami Firebase.
- W Xcode przy otwartym projekcie aplikacji przejdź do File > Add Packages .
- Po wyświetleniu monitu dodaj repozytorium Firebase Apple platforms SDK:
- Wybierz bibliotekę monitorowania wydajności.
- Po zakończeniu Xcode automatycznie rozpocznie rozwiązywanie i pobieranie zależności w tle.
https://github.com/firebase/firebase-ios-sdk
Następnie skonfiguruj moduł Firebase:
- Zaimportuj moduł
FirebaseCore
do swojegoUIApplicationDelegate
, a także wszelkie inne moduły Firebase, z których korzysta delegat aplikacji. Na przykład, aby użyć Cloud Firestore i uwierzytelniania:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Szybki
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Cel C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Skonfiguruj udostępnioną instancję
FirebaseApp
w metodzie applicationapplication(_:didFinishLaunchingWithOptions:)
delegata aplikacji:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Szybki
// Use Firebase library to configure APIs FirebaseApp.configure()
Cel C
// Use Firebase library to configure APIs [FIRApp configure];
- Jeśli używasz SwiftUI, musisz utworzyć delegata aplikacji i dołączyć go do struktury
App
za pośrednictwemUIApplicationDelegateAdaptor
lubNSApplicationDelegateAdaptor
. Musisz także wyłączyć przełączanie delegatów aplikacji. Aby uzyskać więcej informacji, zobacz instrukcje SwiftUI .SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
Ponownie skompiluj swoją aplikację.
Krok 2 : Wygeneruj zdarzenia dotyczące wydajności dla początkowego wyświetlenia danych
Firebase rozpocznie przetwarzanie zdarzeń, gdy pomyślnie dodasz pakiet SDK do swojej aplikacji. Jeśli nadal rozwijasz się lokalnie, korzystaj z aplikacji, aby generować zdarzenia do wstępnego gromadzenia i przetwarzania danych.
Kontynuuj rozwijanie aplikacji za pomocą symulatora lub urządzenia testowego.
Generuj zdarzenia, kilkakrotnie przełączając aplikację między tłem a pierwszym planem, wchodząc w interakcję z aplikacją, nawigując po ekranach i/lub uruchamiając żądania sieciowe.
Przejdź do pulpitu wydajności konsoli Firebase. Początkowe dane powinny zostać wyświetlone w ciągu kilku minut.
Jeśli nie widzisz danych początkowych, zapoznaj się ze wskazówkami dotyczącymi rozwiązywania problemów .
Krok 3 : (Opcjonalnie) Wyświetl komunikaty dziennika dotyczące zdarzeń związanych z wydajnością
Włącz rejestrowanie debugowania w następujący sposób:
- W Xcode (minimum v14.1) wybierz Product > Scheme > Edit schema .
- Wybierz opcję Uruchom z menu po lewej stronie, a następnie wybierz kartę Argumenty .
- W sekcji argumenty przekazane podczas uruchamiania dodaj opcję
-FIRDebugEnabled
.
Sprawdź komunikaty dziennika pod kątem komunikatów o błędach.
Performance Monitoring oznacza swoje komunikaty dziennika za pomocą
Firebase/Performance
aby można było filtrować komunikaty dziennika.Sprawdź następujące typy dzienników, które wskazują, że monitorowanie wydajności rejestruje zdarzenia dotyczące 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. Zaktualizowanie danych w panelu może chwilę potrwać.
Jeśli Twoja aplikacja nie rejestruje zdarzeń związanych z wydajnością, zapoznaj się ze wskazówkami dotyczącymi rozwiązywania problemów .
Krok 4 : (Opcjonalnie) Dodaj niestandardowe monitorowanie dla określonego kodu
Aby monitorować dane dotyczące wydajności powiązane z określonym kodem w Twojej aplikacji, możesz instrumentować niestandardowe ślady kodu .
Dzięki niestandardowemu śledzeniu kodu możesz zmierzyć, ile czasu zajmuje aplikacji ukończenie określonego zadania lub zestawu zadań, takich jak załadowanie zestawu obrazów lub wysłanie zapytania do bazy danych. Domyślną metryką dla niestandardowego śledzenia kodu jest jego czas trwania, ale można również dodać niestandardowe metryki, takie jak trafienia w pamięci podręcznej i ostrzeżenia dotyczące pamięci.
W swoim kodzie definiujesz początek i koniec niestandardowego śledzenia kodu (oraz dodajesz dowolne niestandardowe metryki) za pomocą interfejsu API udostępnianego przez zestaw SDK do monitorowania wydajności.
Odwiedź Dodaj monitorowanie dla określonego kodu, aby dowiedzieć się więcej o tych funkcjach i jak dodać je do swojej aplikacji.
Krok 5 : Wdróż aplikację, a następnie przejrzyj wyniki
Po zweryfikowaniu monitorowania wydajności przy użyciu symulatora Xcode i co najmniej jednego urządzenia testowego możesz wdrożyć zaktualizowaną wersję aplikacji dla użytkowników.
Możesz monitorować dane dotyczące wydajności w panelu wydajności konsoli Firebase.
Znane problemy
- Monitorowanie wydajności ma znane problemy ze zgodnością z GTMSQLite. Zalecamy, aby nie używać monitorowania wydajności z aplikacjami korzystającymi z GTMSQLite.
- Zmiana metody po wywołaniu
FirebaseApp.configure()
może zakłócać działanie zestawu SDK do monitorowania wydajności. - Znane problemy z symulatorem systemu iOS 8.0-8.2 uniemożliwiają monitorowaniu wydajności przechwytywanie zdarzeń związanych z wydajnością. Te problemy zostały rozwiązane w symulatorze systemu iOS 8.3 i nowszych wersjach.
- Połączenia ustanowione przy użyciu
backgroundSessionConfiguration
NSURLSession będą wykazywać dłuższe niż oczekiwane czasy połączenia. Te połączenia są wykonywane poza procesem, a czasy odzwierciedlają zdarzenia wywołania zwrotnego w trakcie procesu.
Następne kroki
Przejrzyj i uruchom przykładowy kod systemu iOS monitorowania wydajności w witrynie GitHub .
Dowiedz się więcej o danych zbieranych automatycznie przez monitorowanie wydajności:
- Dane związane z cyklem życia Twojej aplikacji, takie jak czas jej uruchomienia
- Dane do renderowania ekranu w Twojej aplikacji
- Dane dotyczące żądań sieciowych HTTP/S wysyłanych przez Twoją aplikację
Wyświetlaj, śledź i filtruj dane dotyczące wydajności w konsoli Firebase.
Dodaj monitorowanie określonych zadań lub przepływów pracy w swojej aplikacji, instrumentując niestandardowe ślady kodu .