Zanim zaczniesz
Dodaj Firebase do swojego projektu Apple, chyba że masz to już za sobą.
Krok 1. Dodaj do aplikacji Performance Monitoring
Po dodaniu pakietu SDK Performance Monitoring Firebase automatycznie zacznie zbierać dane dotyczące renderowania ekranu, dane związane z cyklem życia aplikacji (np. czas uruchamiania aplikacji) oraz dane dotyczące żądań sieciowych HTTP/S.
Do instalacji zależności Firebase i zarządzania nimi możesz używać menedżera pakietów Swift.
- Po otwarciu projektu aplikacji przejdź w Xcode do 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ę
-ObjC
do sekcji Inne flagi łączące w ustawieniach kompilacji celu. - Gdy to zrobisz, Xcode automatycznie zacznie wyszukiwać i pobierać zależności w tle.
https://github.com/firebase/firebase-ios-sdk.git
Następnie skonfiguruj moduł Firebase:
- Zaimportuj moduł
FirebaseCore
w plikuUIApplicationDelegate
, a także wszystkie inne moduły Firebase, których używa delegowany obiekt 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 współdzieloną instancję
FirebaseApp
w metodzieapplication(_:didFinishLaunchingWithOptions:)
w delegacie 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 delegujący aplikacji i dołączyć go do struktury
App
za pomocą funkcjiUIApplicationDelegateAdaptor
lubNSApplicationDelegateAdaptor
. Musisz też wyłączyć przełączanie przekazywania dostępu do aplikacji. Więcej informacji znajdziesz w instrukcjach 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 aplikację.
Krok 2. Wygeneruj zdarzenia dotyczące skuteczności na potrzeby wyświetlania początkowych danych
Firebase rozpocznie przetwarzanie zdarzeń, gdy dodasz pakiet SDK do aplikacji. Jeśli nadal tworzysz aplikację lokalnie, użyj jej, aby wygenerować zdarzenia do wstępnego zbierania i przetwarzania danych.
kontynuować tworzenie aplikacji za pomocą symulatora lub urządzenia testowego;
generować zdarzenia, przełączając aplikację kilka razy między tłem a płaszczyzną, wchodzić z nią w interaktywność przez przełączanie się między ekranami lub wywoływanie żądań sieciowych.
Otwórz panel Wydajność w konsoli Firebase. Pierwsze dane powinny wyświetlić się w ciągu kilku minut.
Jeśli nie widzisz swoich danych początkowych, przeczytaj wskazówki dotyczące rozwiązywania problemów.
Krok 3. (Opcjonalnie) Wyświetl komunikaty z dziennika dotyczące zdarzeń związanych z wydajnością
Włącz rejestrowanie debugowania w ten sposób:
- W Xcode (minimalna wersja 15.2) wybierz Product > Schemat > Edytuj schemat.
- W menu po lewej stronie wybierz Uruchom, a potem wybierz kartę Argumenty.
- W sekcji Arguments Passed at Launch (Argumenty przekazane przy uruchomieniu) dodaj parametr
-FIRDebugEnabled
.
Sprawdź, czy w logach nie ma komunikatów o błędach.
Performance Monitoring oznacza swoje komunikaty logowania tagiem
Firebase/Performance
, aby można je było filtrować.Sprawdź, czy występują te typy dzienników, które wskazują, że Performance Monitoring rejestruje zdarzenia dotyczące skutecznoś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 minąć kilka chwil, zanim dane zostaną zaktualizowane w panelu.
Jeśli Twoja aplikacja nie rejestruje zdarzeń związanych z wydajnością, zapoznaj się z wskazówkami dotyczącymi rozwiązywania problemów.
Krok 4. (Opcjonalnie) Dodaj niestandardowe monitorowanie dla określonego kodu
Aby monitorować dane o wydajności powiązane z konkretnym kodem w aplikacji, możesz użyć niestandardowych logów kodu.
Niestandardowy ślad kodu pozwala sprawdzić, ile czasu zajmuje aplikacji wykonanie określonego zadania lub zestawu zadań, takich jak wczytanie zestawu obrazów czy wysłanie zapytania do bazy danych. Domyślnym rodzajem danych w przypadku śledzenia kodu niestandardowego jest jego czas trwania, ale możesz też dodać dane niestandardowe, takie jak trafienia do pamięci podręcznej i ostrzeżenia dotyczące pamięci.
W kodzie definiujesz początek i koniec niestandardowego logu czasu (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 określonego kodu.
Krok 5. Wdróż aplikację i sprawdź jej wyniki
Po zweryfikowaniu Performance Monitoring za pomocą symulatora Xcode i co najmniej jednego urządzenia testowego możesz wdrożyć zaktualizowaną wersję aplikacji dla użytkowników.
Dane o skuteczności możesz sprawdzać w panelu Skuteczność w konsoli Firebase.
Znane problemy
- Performance Monitoring ma znane problemy ze zgodnością z GTMSQLite. Zalecamy, aby nie używać Performance Monitoring w przypadku aplikacji korzystających z GTMSQLite.
- Dynamiczny ruch metody po wywołaniu funkcji
FirebaseApp.configure()
może zakłócać działanie pakietu SDK Performance Monitoring. - Znane problemy z symulatorem iOS 8.0–8.2 uniemożliwiają Performance Monitoring rejestrowanie zdarzeń dotyczących wydajności. Te problemy rozwiązuje symulator iOS 8.3 i nowsze wersje.
- Połączenia nawiązywane za pomocą funkcji
backgroundSessionConfiguration
w bibliotece NSURLSession będą miały dłuższy czas nawiązywania niż oczekiwano. Te połączenia są wykonywane poza procesem, a ich czasy odzwierciedlają zdarzenia wywołania zwrotnego w ramach procesu.
Dalsze kroki
Przejrzyj i uruchom na GitHubie Performance Monitoringprzykładowy kod iOS.
Dowiedz się więcej o danych automatycznie zbieranych przez Performance Monitoring:
- dane związane z cyklem życia aplikacji, takie jak godzina uruchomienia aplikacji;
- Dane dotyczące renderowania ekranu w aplikacji
- Dane dotyczące żądań sieciowych HTTP/S wysyłanych przez Twoją aplikację
Wyświetlaj, śledź i filtruj dane o skuteczności w konsoli Firebase.
Dodaj monitorowanie określonych zadań lub przepływów pracy w aplikacji, uwzględniając logi kodu niestandardowego.