Raport o błędzie zawiera logi urządzenia, zrzuty stosu i inne dane diagnostyczne
informacje, które pomagają znaleźć i naprawić błędy w aplikacji. Aby zarejestrować robaka
raportu z urządzenia, skorzystaj z narzędzia do zgłaszania błędów
w menu emulatora Androida,
lub polecenie adb bugreport
na komputerze, na którym pracujesz.
![](https://developer.android.com/static/studio/images/run/dev-options-pixel_2x_cropped.png?authuser=19&hl=pl)
Rysunek 1. Opcje programisty na urządzeniu.
Aby zgłosić błąd, musisz mieć: Opcje programisty włączone na na urządzeniu, aby uzyskać dostęp do opcji Zgłoś błąd.
Zapisz raport o błędzie na urządzeniu
![](https://developer.android.com/static/studio/images/run/dev-options-take-bug-report_2x.png?authuser=19&hl=pl)
Rysunek 2. Raport o błędzie jest gotowy.
Aby otrzymać raport o błędzie bezpośrednio z urządzenia:
- Włącz programistę Opcje.
- W sekcji Opcje programisty kliknij Zgłoś błąd.
- Wybierz typ raportu o błędzie i kliknij Zgłoś.
Po chwili otrzymasz powiadomienie, że raport o błędzie jest gotowy, co pokazano na rys. 2.
- Aby udostępnić raport o błędzie, kliknij powiadomienie.
Utwórz raport o błędzie za pomocą emulatora Androida
W Emulatorze Androida możesz użyć opcji Zgłoś błąd. w rozszerzonych elementach sterujących:
- Kliknij Więcej
w Panel emulatora.
W oknie Rozszerzone elementy sterujące wybierz Raport o błędzie.
Otworzy się ekran, na którym możesz zobaczyć szczegóły raportu o błędzie, takie jak zrzut ekranu, informacje o konfiguracji AVD i dziennik raportu o błędzie. Dostępne opcje Możesz też wpisać wiadomość z krokami odtwarzania, która ma zostać zapisana w raporcie.
Poczekaj, aż raport o błędzie się zakończy, a potem kliknij Zapisz raport.
Rejestrowanie raportu o błędzie za pomocą narzędzia adb
Jeśli masz połączone tylko 1 urządzenie, możesz pobrać raport o błędzie za pomocą
adb
:
$ adb bugreport E:\Reports\MyBugReports
Jeśli nie określisz ścieżki do raportu o błędzie, zostanie on zapisany w folderze katalogu lokalnym.
Jeśli masz podłączonych kilka urządzeń, musisz wskazać to, przy użyciu funkcji
Opcja: -s
. Uruchom te polecenia adb
, aby
znajdź numer seryjny urządzenia i wygeneruj raport o błędzie:
$ adb devices List of devices attached emulator-5554 device 8XV7N15C31003476 device $ adb -s 8XV7N15C31003476 bugreport
Zapisywanie starszego raportu o błędzie
Domyślnie raporty o błędach są zapisywane na stronie /bugreports
. Możesz je wyświetlić w
to polecenie:
$ adb shell ls /bugreports/ bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS-dumpstate_log-yyy.txt bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip dumpstate-stats.txt
Następnie możesz pobrać plik ZIP za pomocą narzędzia adb pull
:
$ adb pull /bugreports/bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip
Sprawdź plik ZIP z raportem o błędzie
Domyślnie nazwa pliku ZIP to
bugreport-BUILD_ID-DATE.zip
Plik ZIP
może zawierać wiele plików, ale najważniejszym z nich jest
bugreport-BUILD_ID-DATE.txt
Ten
to raport o błędzie, który zawiera
dane diagnostyczne usług systemowych (dumpsys
), logi błędów (dumpstate
),
i dzienników komunikatów systemowych (logcat
). Komunikaty systemowe zawierają zrzuty stosu
gdy urządzenie zgłasza błąd i komunikaty napisane ze wszystkich aplikacji z
Log
zajęcia.
Plik ZIP zawiera plik metadanych version.txt
, który zawiera
wersji Androida. Gdy funkcja Systrace jest włączona, plik ZIP
zawiera plik systrace.txt
.
Narzędzie Systrace
pomaga analizować skuteczność
przechwytywanie i wyświetlanie czasów wykonywania
procesów aplikacji i innych procesów systemu Android.
Narzędzie dumpstate
kopiuje pliki z systemu plików urządzenia
do pliku ZIP w folderze FS
, aby móc się do nich odwołać. Przykład:
plik /dirA/dirB/fileC
na urządzeniu wygenerowałby
FS/dirA/dirB/fileC
w pliku ZIP.
Rysunek 3. Struktura pliku raportu o błędach.
Więcej informacji: Czytanie raportów o błędach
Otrzymuj raporty od użytkowników
Rejestrowanie raportów o błędach przydaje się, gdy korzystasz z aplikacji ale użytkownicy nie będą mogli łatwo udostępniać z Tobą. Aby otrzymywać raporty o awariach ze zrzutami stosu od rzeczywistych użytkowników: korzystać z raportów o awariach w Google Play i Firebase funkcje zabezpieczeń.
Konsola Google Play
Raporty możesz otrzymywać z Konsola Google Play aby wyświetlić dane dotyczące awarii, a aplikacja nie Błędy ANR (reagujące) w przypadku użytkowników, którzy zainstalowali Twoją aplikację z Google Play. Dostępne są dane z ostatnich 6 miesięcy.
Więcej informacji: Wyświetlanie awarii i błędów typu Aplikacja nie odpowiada (ANR) w Centrum pomocy Konsoli Play.
Zgłaszanie awarii Firebase
Funkcja raportowania Firebase Crashlytics generuje szczegółowe raporty o błędach . Błędy są grupowane w problemy na podstawie podobnych zrzutów stosu które są podzielone według wagi wpływu na użytkowników. Oprócz automatycznego możesz rejestrować zdarzenia niestandardowe, aby łatwiej przechwytywać kroki prowadzące do awarii.
Aby zacząć otrzymywać raporty o awariach od dowolnego użytkownika, dodaj
Zależności Firebase
do pliku build.gradle
. Więcej informacji:
Firebase Crashlytics.