En felrapport innehåller enhetsloggar, stapelspår och annan diagnostisk information som hjälper dig att hitta och åtgärda fel i din app. Du kan fånga en felrapport från enheten genom att använda antingen alternativet Take bug report developer på enheten, menyn Android Emulator eller kommandot adb bugreport
på din utvecklingsmaskin.
Figur 1. Utvecklaralternativ
För att ta en felrapport måste du ha Utvecklaralternativ aktiverat på din enhet så att du kan komma åt alternativet Ta felrapport.
Fånga en felrapport från en enhet
Figur 2. Felrapporten är klar
För att få en felrapport direkt från enheten gör du följande:
- Se till att du har Aktiverat DeveloperOptions.
- I Developer Options trycker du på Ta felrapport.
- Välj vilken typ av felrapport du vill ha och tryck på Rapportera.
Efter en stund får du ett meddelande om att felrapporten är klar (se figur 2).
- För att dela felrapporten trycker du på meddelandet.
Fånga en felrapport från Android Emulator
Från Android Emulator kan du använda funktionen File a bugfeature i de utökade kontrollerna:
- Klicka på Mer i emulatorpanelen.
-
I fönstret Extended controls väljer du Bug report (felrapport) till vänster.
Detta öppnar en skärm där du kan se detaljerna för felrapporten, t.ex. skärmdump, AVD-konfigurationsinformation och loggbok för felrapporten. Du kan också skriva ett meddelande med reproduktionssteg för att spara med rapporten.
-
Vänta tills felrapporten har samlats in och klicka sedan på Spara rapport.
Fånga en felrapport med adb
Om du bara har en enhet ansluten kan du hämta en felrapport med hjälp avadb
på följande sätt:
$ adb bugreport E:\Reports\MyBugReports
Om du inte anger någon sökväg för felrapporten sparas den i den lokala katalogen.
Om du har flera enheter anslutna måste du ange enheten med alternativet-s
. Kör följande adb
-kommandon för att få fram enhetens serienummer och generera felrapporten.
$ adb devicesList of devices attachedemulator-5554 device8XV7N15C31003476 device$ adb -s 8XV7N15C31003476 bugreport
Inspektera felrapportens ZIP-fil
Som standard heter ZIP-filenbugreport-BUILD_ID-DATE.zip
och den kan innehålla flera filer, men den viktigaste filen ärbugreport-BUILD_ID-DATE.txt
. Detta är felrapporten och den innehållerdiagnostiska utdata för systemtjänster (dumpsys
), felloggar (dumpstate
) och loggar för systemmeddelanden (logcat
). Systemmeddelandena omfattar stacktraces när enheten skapar ett fel och meddelanden som skrivs från alla appar med klassen Log
.
ZIP-filen innehåller en version.txt
metadatafil som innehåller Android-utgivningsbrevet, och när systrace är aktiverat innehåller ZIP-filen också en systrace.txt
-fil. VerktygetSystrace hjälper dig att analysera prestandan i din applikation genom att fånga och visa exekveringstiderna för dina applikationsprocesser och andra processer i Android-systemet.
Verktyget dumpstate
kopierar filer från enhetens filsystem till ZIP-filen under mappen FS
så att du kan referera till dem. Till exempel skulle en /dirA/dirB/fileC
-fil i enheten generera enFS/dirA/dirB/fileC
-post i ZIP-filen.
Figur 3. Struktur för felrapporteringsfiler
För mer information, seLäsning av felrapporter.
Få rapporter från dina användare
Ansamling av felrapporter enligt beskrivningen ovan är till hjälp när du använder appen själv, men dina slutanvändare kan inte enkelt dela dessa typer av felrapporter med dig. För att få kraschrapporter med stapelspår från verkliga användare bör du dra nytta av Google Plays och Firebases funktioner för kraschrapportering.
Google Play Console
Du kan få rapporter från Google Play Console för att visa data för krascher och ANR-fel (Application Not Similaring) från användare som har installerat din app från Google Play.Data finns tillgängliga för de senaste sex månaderna.
För mer information, seSe krascher & applikation som inte svarar (ANR) fel i Play Console hjälp.
Firebase kraschrapportering
Firebase Crashlytics-rapportering skapar detaljerade rapporter om felen i din app.Fel grupperas i problem baserat på att de har liknande stack-traces, och triageras efter hur allvarlig påverkan de har på dina användare. Förutom automatiska rapporter kan du logga anpassade händelser för att fånga upp de steg som leder till en krasch.
Du kan börja ta emot kraschrapporter från vilken användare som helst genom att helt enkelt lägga till Firebase-beroendena i din build.gradle
-fil. Mer information finns iFirebase Crashlytics.