Dane o braku awarii

W przypadku każdej aplikacji Crashlytics automatycznie oblicza i wyświetla dane o bezawaryjnej pracy, a konkretnie odsetek użytkowników, u których nie wystąpiła awaria oraz odsetek sesji bez awarii. Te dane mogą pomóc Ci szybko ocenić stabilność aplikacji.

Wykresy tych danych o bezawaryjnej pracy znajdziesz u góry Crashlytics pulpitu. Możesz je filtrować według różnych wymiarów, takich jak zakres dat, kompilacja i (w przypadku aplikacji na Androida) według Google Play ścieżki.

Pamiętaj, że dane o bezawaryjnej pracy są obliczane tylko w przypadku zdarzeń krytycznych (i nieobsłużonych wyjątków zgłaszanych jako krytyczne w Unity i Flutterze).

Pobieranie danych o bezawaryjnej pracy

W przypadku większości aplikacji dane o bezawaryjnej pracy są obliczane automatycznie po zintegrowaniu pakietu Crashlytics SDK z aplikacją. Istnieją jednak sytuacje, w których Crashlytics nie otrzymuje danych niezbędnych do obliczenia danych o bezawaryjnej pracy:

  • Kompilacje aplikacji, które używają starszej wersji pakietu Crashlytics SDK (informacje o minimalnych obsługiwanych wersjach znajdziesz poniżej).

  • Kompilacje aplikacji, które wyłączają automatyczne Crashlytics zbieranie danych i raportowanie (więcej informacji znajdziesz w "Wpływ ustawień zbierania danych na jakość danych" sekcji na tej stronie).

Wersje pakietu SDK, które obsługują dane o bezawaryjnej pracy

Aby uzyskać dane o bezawaryjnej pracy, musisz zaktualizować aplikację tak, aby używała wersji pakietu Crashlytics SDK , która je obsługuje. Oto minimalne obsługiwane wersje pakietu Crashlytics SDK, które mogą dostarczać dane o bezawaryjnej pracy:

  • Platformy Apple: wersja 10.8.0 lub nowsza.
  • Android: wersja 18.6.0 lub nowsza (BoM w wersji 32.6.0 lub nowszej).
  • Flutter: wersja 3.4.5 lub nowsza.
  • Unity: wersja 11.7.0 lub nowsza.

Dane o bezawaryjnej pracy powinny być automatycznie dostępne w przypadku kompilacji aplikacji, które używają zaktualizowanej wersji pakietu SDK.

Czym są dane o bezawaryjnej pracy?

Dane o bezawaryjnej pracy obejmują użytkowników , u których nie wystąpiła awaria, oraz sesje bez awarii.

Dane o bezawaryjnej pracy zależą od 2 pojęć: użytkowników i sesji. Aby uzyskać dane o bezawaryjnej pracy w aplikacji, musisz używać wersji pakietu Crashlytics SDK, która może wysyłać dane dotyczące obu tych pojęć. Oto, jak Crashlytics rozróżnia użytkownika od sesji:

  • Użytkownik to pojedyncza instalacja aplikacji na urządzeniu. Jeśli na przykład, jeśli dana osoba ma zainstalowaną Twoją aplikację na kilku różnych urządzeniach, to Crashlytics zliczy każdą instalację jako innego i unikalnego użytkownika.

  • Sesja to ciągły okres, w którym użytkownik korzysta z aplikacji. Nowa sesja rozpoczyna się, gdy aplikacja jest uruchamiana na zimno lub gdy aplikacja przechodzi na pierwszy plan po co najmniej 30 minutach działania w tle.

Dane o bezawaryjnej pracy są obliczane tylko w przypadku zdarzeń krytycznych (i nieobsłużonych wyjątków zgłaszanych jako krytyczne w Unity i Flutterze).

Czym są dane użytkownicy , u których nie wystąpiła awaria?

Dane użytkownicy , u których nie wystąpiła awaria to odsetek użytkowników, którzy korzystali z Twojej aplikacji w wybranym okresie, ale nie wystąpiła u nich awaria. Te dane odzwierciedlają wrażenia, jakie Twoja aplikacja zapewnia pojedynczemu użytkownikowi. Są one często traktowane jako kluczowe dane o stanie całej aplikacji, gdy celem jest ogólna wygoda użytkownika.

Te dane mogą być szczególnie przydatne w przypadku tych typów aplikacji:

  • Aplikacje z długimi i swobodnymi sesjami , takie jak aplikacje do strumieniowego przesyłania na żądanie, aplikacje społecznościowe lub gry swobodne, w których użytkownik może kontynuować tam, gdzie skończył. Ponieważ użytkownicy zwykle korzystają z tych aplikacji podczas dłuższych sesji, często wielosesyjnych, maksymalizacja łącznej liczby użytkowników, u których nie wystąpiła awaria, ma pierwszeństwo przed zapewnieniem, że każda sesja będzie bezbłędna.

  • Aplikacje z ustaloną bazą użytkowników , takie jak dobrze znane aplikacje do pracy lub platformy internetowe na dużą skalę, w których przyzwyczajenie i potrzeba korzystania z tych platform przeważają nad niedogodnościami związanymi z awarią.

Czym są dane sesje bez awarii?

Dane sesje bez awarii to odsetek sesji, które miały miejsce w wybranym okresie i nie zakończyły się awarią. Sesje bez awarii wskazują na ogólną niezawodność aplikacji i budują zaufanie użytkowników. Śledzenie sesji bez awarii jest szczególnie ważne na wczesnych etapach nowej wersji, gdy awaria podczas pierwszej interakcji użytkownika może spowodować natychmiastową frustrację do tego stopnia, że użytkownik porzuci aplikację.

Te dane są często preferowane w przypadku tych typów aplikacji:

  • Aplikacje z krótkimi i intensywnymi wzorcami użytkowania , takie jak gry w czasie rzeczywistym lub aplikacje do strumieniowego przesyłania, w których awaria w krytycznym momencie może zniechęcić użytkownika.

  • Aplikacje o znaczących konsekwencjach , takie jak aplikacje finansowe lub nawigacyjne, w których nacisk kładzie się na stan końcowy. Awaria w jednej z tych aplikacji może prowadzić do poważnych problemów, co spowoduje utratę zaufania do aplikacji.

Obliczanie danych o bezawaryjnej pracy

Jak obliczane są dane użytkownicy , u których nie wystąpiła awaria?

Wartość użytkowników, u których nie wystąpiła awaria, to odsetek użytkowników, którzy korzystali z Twojej aplikacji, ale w wybranym okresie nie wystąpiła u nich awaria.

Oto formuła obliczania odsetka użytkowników, u których nie wystąpiła awaria. Wartości wejściowe są dostarczane przez pakiet Crashlytics SDK i są oparte na okresie wybranym w menu w prawym górnym rogu pulpitu Crashlytics.

CRASH_FREE_USERS_PERCENTAGE = 1 - (CRASHED_USERS / ALL_USERS)

  • CRASHED_USERS to łączna liczba unikalnych użytkowników, u których wystąpiła awaria w wybranym okresie.

  • ALL_USERS to łączna liczba użytkowników, którzy korzystali z Twojej aplikacji w wybranym okresie.

Odsetek użytkowników, u których nie wystąpiła awaria, to agregacja w czasie, a nie średnia.

Nie należy porównywać wartości użytkowników, u których nie wystąpiła awaria, w różnych okresach. Prawdopodobieństwo wystąpienia awarii u pojedynczego użytkownika rośnie wraz z liczbą korzystania z aplikacji, dlatego wartość użytkowników, u których nie wystąpiła awaria, będzie prawdopodobnie mniejsza w dłuższych okresach.

Jak obliczane są dane sesje bez awarii?

Wartość sesji bez awarii to odsetek sesji, które miały miejsce w Twojej aplikacji, ale w wybranym okresie nie wystąpiła w nich awaria.

Oto formuła obliczania odsetka sesji bez awarii. Wartości wejściowe są dostarczane przez pakiet Crashlytics SDK i są oparte na okresie wybranym w menu w prawym górnym rogu pulpitu Crashlytics.

CRASH_FREE_SESSIONS_PERCENTAGE = 1 - (CRASHED_SESSIONS / ALL_SESSIONS)

  • CRASHED_SESSIONS to liczba sesji, które zakończyły się awarią w wybranym okresie.

  • ALL_SESSIONS to łączna liczba sesji, które miały miejsce w Twojej aplikacji w wybranym okresie.

Odsetek sesji bez awarii to agregacja w czasie, a nie średnia.

Wpływ ustawień zbierania danych na jakość danych

W zależności od ustawień zbierania danych dane o bezawaryjnej pracy mogą mieć niskie lub zerowe wartości. Oto 2 typowe sytuacje, które mogą powodować, że dane o bezawaryjnej pracy będą niewiarygodne:

  • Jeśli włączysz raportowanie za zgodą użytkownika , wyłączając automatyczne raportowanie awarii, informacje o awariach mogą być wysyłane do Crashlytics tylko przez użytkowników, którzy wyraźnie zgodzili się na zbieranie danych. W związku z tym dokładność danych o bezawaryjnej pracy będzie ograniczona, ponieważ Crashlytics ma informacje o awariach tylko od tych użytkowników (a nie od wszystkich użytkowników). Oznacza to, że dane o bezawaryjnej pracy mogą być mniej wiarygodne i mniej odzwierciedlać ogólną stabilność aplikacji.

  • Jeśli masz wyłączone automatyczne zbieranie danych, możesz użyć sendUnsentReports, aby wysłać do Crashlyticsraporty zapisane w pamięci podręcznej na urządzeniu. Użycie tej metody spowoduje wysłanie do Crashlytics danych o awariach, ale nie danych o sesjach, co spowoduje, że wykresy w konsoli będą pokazywać niskie lub zerowe wartości danych o bezawaryjnej pracy.