Sådan får du en Logcat til rapportering af fejl på Android

Hvis du nogensinde er blevet bedt om en logcat, så gør du det!

Hvis du nogensinde er blevet bedt om en logcat, så gør du det!
Reklame

Android gør et rigtig godt stykke arbejde med at gemme nitty-gritty fra sine brugere. Når ting går galt, ser du ikke en skræmmende mur af kryptisk tekst, ligesom du gør på en Mac. De bare ... Gå galt.

WallOfErrors

Selvom det er godt for de fleste mennesker, er det mindre nyttigt for udviklere, der ønsker at se, hvorfor deres apps ikke virker, og for strømbrugere, der ønsker at få en mere praktisk tilgang.

Derfor er logcat så utroligt nyttigt. Det giver dig mulighed for at få et dump af din telefon eller tablets systemlogfiler for at fejle problemer. Selvom de fleste brugere ikke har brug for det, vil udviklere undertiden bede brugere om at give dem deres enheds logfiler, når der opstår et problem. Sådan kan du installere logcat, og hvordan du bruger det.

Kom Logcat

Før du begynder at producere systemlogfiler, skal du først opfylde nogle forudsætninger. Den første er at installere Android Debug Bridge, almindeligvis kendt som ADB New To Android Debug Bridge? Sådan gør processen enkel og nem Ny til Android Debug Bridge? Sådan gør processen enkel og nem ADB er utroligt nyttigt til at sende kommandoer til din Android-enhed fra din computer. For begynderne derude, her er en død enkel måde at bruge ADB på. Læs mere . Dette indeholder Logcat-værktøjet.

Hvis du er på en Mac, er den enkleste måde at gøre dette på, ved at bruge HomeBrew-pakkehåndteringen. Installer Mac-software fra terminal med Homebrew Installer Mac-software fra terminal med Homebrew Installer (næsten) enhver gratis Mac-app ved at skrive fire ord og rammer "Enter". Læs mere . Når du er installeret, skal du bare køre "brew install android platform-tools" .

BrewAndroid

Hvis du er på Linux, vil de trin, der kræves for at installere ADB, variere vildt mellem distributioner. Hvis du er på Ubuntu, skal du bare køre "sudo apt-get install android-tools-adb" .

Endelig, hvis du er på Windows, har du et par muligheder. For det første har XDADevelopers et one-click ADB installer, som indeholder de nødvendige drivere og FastBoot. Alternativt kan du installere det via Chocolatey pakke manager, selv om den tilgængelige version ikke er den nyeste.

Sæt din enhed i udviklertilstand

Dernæst vil du aktivere udviklertilstand på din enhed. For at gøre det skal du åbne dine indstillinger og gå til "About Phone" eller "About Tablet". Rul derefter ned til bunden af ​​skærmen og tryk på "Build Number" syv gange. Når du har gjort det, skal det fortælle dig, at du har indtastet udviklertilstand.

DeveloperMode

Tryk tilbage og gå til indstillinger rodmappen, hvor du skal se noget, der siger "Udviklerindstillinger". Tryk på det.

Udvikler muligheder

Skift derefter USB Debugging på Hvad er USB Debugging Mode på Android? Hvad er USB Debugging Mode på Android? USB debugging giver dig mulighed for nemt at sende kommandoer fra din computer til din telefon. Sådan fungerer det, og hvorfor du bør overveje at bruge det. Læs mere og tilslut din Android-enhed til din computer. Hvis alt fungerede okay, bør du se en strenge advarsel, dukker op på din enhed.

USB debugging

Ser på logfiler

Nu kan vi begynde at se på logfiler. Åbn en ny terminal eller kommandoprompt, og kør "adb logcat" . Du skal så se systemmeddelelser kaskade ned i dit terminalvindue. Hvis du ikke gør det, betyder det, at noget er gået galt. Enten er din enhed ikke forbundet til din computer, ADB'en blev ikke installeret korrekt, eller du har ikke USB-fejlfinding på din enhed.

debugging

Så hvad om du vil kopiere din telefon eller tablets systembeskeder til en tekstfil til senere analyse? Nå er syntaksen til omdirigering af output den samme på Windows som den er på en Mac. Bare kør "adb logcat> textfile.txt" . Du kan også opnå dette ved at køre " adb logcat -f filnavn" .

Når du har logfilen, kan du analysere den ved hjælp af Sed og Awk. Hver Linux Geek skal vide Sed og Awk. Her er hvorfor ... Hver Linux Geek skal vide Sed og Awk. Her er hvorfor ... To af de mest kriminelt undervurderede Linux-forsyningsvirksomheder er den ganske vist arcane Sed og Awk. Men hvad er de? Hvordan bruges de? Og hvordan gør de det lettere at behandle tekst? Læs mere eller Grep, eller du kan bare sende det til den udvikler, der anmodede om det.

Det er værd at påpege, at logcat vil køre så længe du fortæller det. Hvis du kopierer output til en tekstfil og glemmer at afslutte forbindelsen, bør du ikke blive overrasket, hvis du ikke har nogen plads på harddisken. For at lukke det skal du bare trykke på CTRL-C .

Som enhver, der nogensinde har arbejdet i DevOps eller systemadministration, fortæller dig, kan logfiler ganske nemt strække sig i titusen af ​​gigabyte og derudover. Du er blevet advaret.

En note om filtrering af udgang

Det er værd at bemærke, at du kan fortælle logcat at prioritere visse typer output. Hvis du kører logcat med "V" flag ("adb logcat V"), vil du se absolut alt. Det er fordi du har aktiveret "verbose mode".

LogcatV

Men der er andre udløsere, der viser dig mere specifikke typer fejlmeddelelser. Udløseren "I" viser kun information, mens "D" viser fejlmeddelelser. For mere information, se den officielle Android Debug Bridge dokumentation.

Selvom det er værd at bemærke, at medmindre du har fået at vide andet, er det bedst at køre logcat ved hjælp af standardindstillingerne. Dette er sådan, at den person, der har bedt logfilen, kan få al den information, de har brug for til at rette deres app, og de savner ikke noget.

Er der en løsning til rodede enheder?

Faktisk ja! Hvis du har en forankret telefon eller tablet, kan du installere "aLogCat" fra Google Play Butik. Dette kommer i en gratis version, og en betalt version. Begge er identiske, selv om sidstnævnte støtter udvikleren økonomisk.

aLogCat

Hvad der gør aLogCat anderledes, er, at det kører direkte på din enhed og leveres med nogle funktioner, der gør det lettere at håndtere fejllogger.

Meddelelser fremhæves, så du visuelt kan se, hvilke meddelelser der er fejl, og hvad er uskyldige systemmeddelelser. Du kan også dele dem via e-mail, bluetooth og på PasteBin via PasteDroid.

Hvis du vil gemme dine logfiler direkte på et SD-kort, skal du downloade et andet program kaldet aLogRec. Dette kommer også i en gratis version og en donér version, og den kan købes fra Google Play Butik.

alogrec

Men hvad nu hvis du vil se og redigere logfilerne direkte på din telefon? Til det anbefaler jeg Vim Touch, som er en gratis mobilversion af VIM-tekstredigereren. De øverste 7 grunde til at give Vim Text Editor en chance Top 7 grunde til at give Vim Text Editor en chance I mange år har jeg prøvet en teksteditor efter den anden. Du hedder det, jeg prøvede det. Jeg brugte hver enkelt af disse redaktører i over to måneder som min primære daglige redaktør. På en eller anden måde, jeg ... Læs mere. Jeg skrev først om dette for nogle år siden, da jeg diskuterede de bedste måder at oprette et PHP udviklingsmiljø på en Android-enhed til. Opret det perfekte PHP-udviklingsmiljø i Android. Opret det perfekte PHP-udviklingsmiljø i Android. Brug et uhyggeligt virtuelt tastatur til at skrive en Facebook status opdatering er dårligt nok. Skriv kode på Android? Forgå tanken. Læs mere .

Før vi pakker ting op, vil jeg gerne påpege, at rooting din telefon kan resultere i, at din telefon bliver mere modtagelig for malware, og visse applikationer (især bankapplikationer) virker ikke.

Hvis du overvejer at rote din enhed Den komplette vejledning til at dræbe din Android-telefon eller -tablet Den komplette vejledning til at dræbe din Android-telefon eller -tablet Så vil du rodfæste din Android-enhed? Her er alt hvad du behøver at vide. Læs mere bare for at komme til dine logfiler, jeg anbefaler stærkt, at du bruger den bundne, ADB-baserede tilgang i stedet. Det er lige så let og langt mere sikkert.

Over til dig!

Har du nogensinde haft brug for din telefon eller tablets systemlog? Hvorfor? Fandt du det nemt? Hvilken metode har du brugt? Lad mig vide i kommentarerne nedenfor.

In this article