Zanim zaczniesz
Dodaj Firebase do projektu aplikacji na urządzenia Apple, jeśli nie korzystasz w nim jeszcze z tej usługi.
Krok 1. Dodaj Performance Monitoring do aplikacji
Po dodaniu pakietu SDK Performance Monitoring Firebase automatycznie zaczyna zbierać dane dotyczące renderowania ekranu aplikacji, dane związane z jej cyklem życia (np. czas rozpoczęcia aplikacji) oraz dane dotyczące żądań sieciowych HTTP/S.
Do instalowania zależności Firebase i zarządzania nimi używaj menedżera pakietów Swift.
- W Xcode, gdy projekt aplikacji jest otwarty, kliknij File > Add Packages (Plik > Dodaj pakiety).
- Gdy pojawi się prośba, dodaj repozytorium pakietu SDK Firebase na platformy Apple:
- Wybierz bibliotekę Performance Monitoring.
- Dodaj flagę
-ObjCdo sekcji Other Linker Flags (Inne flagi łączące) w ustawieniach kompilacji celu. - Gdy skończysz, Xcode zacznie automatycznie przetwarzać i pobierać zależności w tle.
https://github.com/firebase/firebase-ios-sdk.git
Następnie skonfiguruj moduł Firebase:
- Zaimportuj moduł
FirebaseCoredo plikuUIApplicationDelegateoraz wszystkie inne moduły Firebase, których używa delegat aplikacji. Aby na przykład użyć właściwości Cloud Firestore i Authentication:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Skonfiguruj udostępnioną instancję
FirebaseAppw metodzieapplication(_:didFinishLaunchingWithOptions:)delegata aplikacji:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- Jeśli używasz SwiftUI, musisz utworzyć obiekt delegowany aplikacji i dołączyć go do struktury
Appza pomocąUIApplicationDelegateAdaptorlubNSApplicationDelegateAdaptor. Musisz też wyłączyć swizzling delegata aplikacji. Więcej informacji znajdziesz w instrukcjach dotyczących SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
Skompiluj ponownie aplikację.
Krok 2. Wygeneruj zdarzenia wydajności, aby wyświetlić dane początkowe
Firebase zacznie przetwarzać zdarzenia, gdy dodasz pakiet SDK do aplikacji. Jeśli nadal pracujesz nad aplikacją lokalnie, wejdź z nią w interakcję, aby wygenerować zdarzenia na potrzeby początkowego zbierania i przetwarzania danych.
Kontynuuj tworzenie aplikacji, używając symulatora lub urządzenia testowego.
Wygeneruj zdarzenia, kilkakrotnie przełączając aplikację między tłem a pierwszym planem, wchodząc z nią w interakcje przez przechodzenie między ekranami lub wywołując żądania sieciowe.
Otwórz panel Wydajność w konsoli Firebase. W ciągu kilku minut powinny się wyświetlić pierwsze dane.
Jeśli nie widzisz danych początkowych, zapoznaj się ze wskazówkami dotyczącymi rozwiązywania problemów.
Krok 3. (Opcjonalnie) Wyświetl komunikaty logu dotyczące zdarzeń związanych z wydajnością
Włącz logowanie debugowania w ten sposób:
- W Xcode (w wersji co najmniej 26.2) kliknij Product (Produkt) > Scheme (Schemat) > Edit scheme (Edytuj schemat).
- W menu po lewej stronie kliknij Run (Uruchom), a następnie wybierz kartę Arguments (Argumenty).
- W sekcji Arguments Passed on Launch (Argumenty przekazywane przy uruchamianiu) dodaj
-FIRDebugEnabled.
Sprawdź, czy w komunikatach logu nie ma komunikatów o błędach.
Performance Monitoring oznacza komunikaty logu tagiem
Firebase/Performance, aby można było je filtrować.Sprawdź, czy występują te typy logów, które wskazują, że Performance Monitoring rejestruje zdarzenia związane z wydajnością:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URLLogging network request trace: URL
Kliknij adres URL, aby wyświetlić dane w konsoli Firebase. Zanim dane zostaną zaktualizowane w panelu, może minąć kilka minut.
Jeśli 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 konkretnego kodu
Aby monitorować dane o skuteczności powiązane z konkretnym kodem w aplikacji, możesz instrumentować ślady niestandardowego kodu.
Dzięki niestandardowemu śledzeniu kodu możesz mierzyć, ile czasu zajmuje aplikacji wykonanie określonego zadania lub zestawu zadań, np. wczytanie zestawu obrazów lub wysłanie zapytania do bazy danych. Domyślnym wskaźnikiem niestandardowego śladu kodu jest czas jego trwania, ale możesz też dodać wskaźniki niestandardowe, takie jak trafienia w pamięci podręcznej i ostrzeżenia o pamięci.
W kodzie definiujesz początek i koniec niestandardowego śladu kodu (oraz dodajesz dowolne niestandardowe dane) za pomocą interfejsu API udostępnianego przez pakiet SDK Performance Monitoring.
Aby dowiedzieć się więcej o tych funkcjach i sposobie ich dodawania do aplikacji, przeczytaj artykuł Dodawanie monitorowania konkretnego kodu.
Krok 5. Wdróż aplikację i sprawdź wyniki
Po zweryfikowaniu Performance Monitoring za pomocą symulatora Xcode i co najmniej 1 urządzenia testowego możesz wdrożyć zaktualizowaną wersję aplikacji dla użytkowników.
Dane o skuteczności możesz monitorować w panelu Wydajność w konsoli Firebase.
Znane problemy
- Performance Monitoring ma znane problemy ze zgodnością z GTMSQLite. Nie zalecamy używania Performance Monitoring z aplikacjami, które korzystają z GTMSQLite.
- Podmiana metody po wywołaniu
FirebaseApp.configure()może zakłócać działanie pakietu SDK Performance Monitoring. - Znane problemy z symulatorem iOS 8.0–8.2 uniemożliwiają usłudze Performance Monitoring rejestrowanie zdarzeń związanych z wydajnością. Te problemy zostały rozwiązane w symulatorze iOS 8.3 i nowszych wersjach.
- Połączenia nawiązywane za pomocą
backgroundSessionConfigurationNSURLSession będą trwały dłużej niż oczekiwano. Te połączenia są realizowane poza procesem, a czasy odzwierciedlają zdarzenia wywołania zwrotnego w procesie.
Dalsze kroki
Przejrzyj i uruchom przykładowy kod Performance Monitoring na iOS na GitHubie.
Dowiedz się więcej o danych zbieranych automatycznie przez Performance Monitoring:
- dane dotyczące cyklu życia aplikacji, takie jak czas uruchomienia aplikacji;
- dane dotyczące renderowania ekranu w aplikacji;
- dane dotyczące żądań sieciowych HTTP/S wysyłanych przez aplikację;
Wyświetlaj, śledź i filtruj dane o skuteczności w konsoli Firebase.
Dodaj monitorowanie konkretnych zadań lub przepływów pracy w aplikacji, instrumentując niestandardowe logi czasu kodu.