Vodič: Slanje Logcat-a za pomoć u otklanjanju pogrešaka vaše omiljene aplikacije

Je li vam se ikada vaša omiljena aplikacija iznenada srušila? Želite li pomoći programeru da otkloni što se dogodilo? Naučite kako uhvatiti i filtrirati Logcats pomoću našeg vodiča.

Hrvati mašu zastavom EU dok slave ulazak Hrvatske u Europsku uniju na Trgu bana Jelešića u Zagrebu 30. lipnja 2013. Deseci tisuća Hrvata pozdravili su ulazak zemlje u Europsku uniju u nedjelju u ponoć (22:00 GMT), gotovo dva desetljeća nakon što je završio krvavi rat za neovisnost te bivše jugoslavenske republike. AFP FOTO / STRINGER

Svima nam se to dogodilo u jednom trenutku. Nije sramota to priznati. Ponekad se Android aplikacije ruše. Bez obzira koristite li potpuno standardni uređaj za pokretanje Google karata ili visoko prilagođeni ROM s modulom Xposed za poboljšati Google Hangouts, rušenje aplikacije i drugi problemi mogu se pojaviti, pa čak i postati velika prepreka. To je osobito istinito u razvoju manjih podešavanja i aplikacija kao što su mnoge koje se nalaze na našoj web stranici. Kada se pojave problemi, jedan od najkonstruktivnijih i najkorisnijih uvida koje korisnik može dati razvojnom programeru u prirodu rušenja jest pružanje

Logcat. Iako iznimno korisne za programere, dobivanje ovih informacija može izgledati pomalo zastrašujuće za običnog korisnika.

Obično uključuje alate naredbenog retka putem ADB-a, Logcat je nedostupan mnogim korisnicima koji imaju malo ili nimalo iskustva s naredbenim retkom. Međutim, izdanje određenih aplikacija eliminiralo je, ili barem uvelike smanjilo, sudjelovanje ADB naredbi u dohvaćanju i slanju Logcat-a, čineći to jednostavnim u nekoliko dodira zaslona. U našoj beskrajnoj misiji pomoći razvojnim programerima, evo vodiča za početnike koji će korisnike naučiti kako poslati Logcat.


Što je Logcat i kako ga izvući?

Logcat je alat ADB Shell koji se koristi za izvlačenje dnevnika svih događaja sustava. To uključuje pogreške, upozorenja, tragove snopa i opće sistemske pojave. Kada se pojavi pogreška, ključne informacije koje upućuju na izvor kvara izlaze kroz ovaj dnevnik, što ga čini vrlo korisnim alatom za rješavanje problema. Obično se povlače i filtriraju kroz ADB naredbe. Međutim, aplikacije kao što su aLogcat, Catlog, i naš alat po izboru za ovaj članak, Matlog, uštedjeli su korisnicima trud kompilirajući ove naredbene alate u GUI aplikacije koju je moguće preuzeti u Trgovini Play.

Kao što je spomenuto, Matlog je ono što koristimo za prikupljanje Logcata. Odabran zbog jednostavnog, a opet jednostavnog sučelja, Matlog je izradio XDA Junior Member plusCubed a na temelju Nolana Lawsona aplikacija otvorenog koda Catlog. Kao Catlog, Matlog se može kompilirano iz izvora, ili besplatno preuzeti iz trgovine Google Play. Iako rootanje omogućuje preskakanje koraka tijekom postavljanja, root pristup nije potreban za prikupljanje Logcats. Ako vaš uređaj nije rootan, jedna naredba ADB ljuske dodijelit će aplikaciji pristup za čitanje zapisa vašeg uređaja. Još niste postavili ADB na svom računalu? Nema problema, samo slijedite ove korake da biste ga pokrenuli.

Napomena: Huawei telefoni imaju potpuno onemogućen Logcat izlaz. Morat ćete promijeniti skrivenu postavku prije nego što nastavite s ostatkom ovog vodiča.


Postavljanje ADB-a

Prvi, preuzmite ADB binarnu datoteku izravno s Googlea za vaš određeni OS i ekstrahirajte ga u poseban direktorij na vašem računalu. Sljedeći, instalirati odgovarajući upravljački program za vaš telefon. Zatim omogućite "USB Debugging" u Postavkama --> Developer Options. Ako ne vidite Opcije za razvojne programere, morat ćete ih omogućiti tako da odete na Postavke --> O telefonu i zatim dodirnete broj međuverzije 7 puta. Konačno, provjerite radi li ADB pokretanjem naredbenog retka u istom direktoriju kao i ADB binarni (desni klik --> "otvori naredbeni redak ovdje") i pokrenite sljedeću naredbu:

adb devices

Ako vidite serijski broj svog uređaja (a na njemu ne piše neovlašteno), zlatni ste. Ako na svom telefonu vidite skočni prozor koji od vas traži da svom računalu dopustite ADB pristup, recite da. Ako ne vidite ni jedno ni drugo, pokušajte ponovno pokrenuti računalo/telefon i ponovno ga uključiti u računalo. U protivnom pokušajte ponovno instalirati upravljački program.


Postavljanje Matloga

Sada kada ste pokrenuli ADB (nadajmo se), sve što trebate učiniti kako biste Matlogu omogućili mogućnost snimanja Logcatsa je izdati sljedeću naredbu u ADB ljusci. Opet, ako je vaš uređaj već rootan, ne morate pokrenuti ovu naredbu jer je to potrebno samo za nerootirane telefone.

adbshellpmgrantcom.pluscubed.matlogandroid.permission.READ_LOGS
Matlog Record Widget uz neispravnu aplikaciju

Nakon što je omogućen i otvoren, Matlog će prikazati sistemske događaje u stvarnom vremenu. Možete dodirnuti gumb za pauzu kako biste ovo zaustavili, a zatim dodirnite izbornik s elipsama i odaberite "očisti" kako biste očistili polje od suvišnih podataka. Preporučuje se da to učinite u pripremi za bilježenje neispravne aplikacije kako biste smanjili veličinu dnevnika. Da biste skratili korake, a time i duljinu dnevnika još više, dodajte Matlog widget na svoj početni zaslon pored dotične aplikacije koja se ruši, kao što je prikazano desno. U ovom slučaju, Apktool X je naša neispravna aplikacija.

Dodirivanje widgeta omogućuje vam imenovanje i početak snimanja dnevnika. Zatim jednostavno reproducirajte kvar odmah nakon početka bilježenja, što će ispuniti Logcat relevantnim informacijama za vaš problem. Nakon što se problem ponovi, jednostavno ponovno dodirnite widget da biste dovršili snimanje dnevnika.

Nakon što to učinite, Matlog će se otvoriti za snimljeni dnevnik. Dodirnite elipse i odaberite "pošalji" za slanje dnevnika kao priloženu tekstualnu datoteku zajedno s općim podacima o uređaju. To je to! Vaš Logcat je uspješno snimljen i poslan profesoru Oaku.

U gornjem primjeru mogu reći da je razlog zbog kojeg se Apktool X srušio to što moj uređaj nije rootan. Doh! Trebao sam u potpunosti Pročitaj članak prije pokušaja korištenja aplikacije.

To je bilo prelako

Naravno, nije sve probleme tako lako uhvatiti. Ponekad problemi koji se odnose na pokretanje ili problemi koji se protežu kroz duža vremenska razdoblja mogu zahtijevati različite značajke aplikacije za snimanje. U takvim slučajevima pustite Matlog da radi u pozadini (nemojte ga pauzirati ili brisati) i upotrijebite funkcije Log Level i Filter za analizu podataka.

Iako obično nije jedina potrebna metoda za prikupljanje relevantnih podataka – neke situacije zahtijevaju više konteksta – svaki od ovih alata može se koristiti na duljim zapisnicima za sortiranje i specificiranje podataka za programer. Naravno, to ovisi o prirodi pogreške i zahtjevima programera. Za korištenje bilo kojeg od ovih, jednostavno pokrenite Matlog, reproducirajte svoj problem, vratite se u Matlog, dodirnite izbornik s točkama i odaberite jednu od ove dvije metode sortiranja.

Odabir razine zapisnika koji prikazuje samo pogreške

Razina zapisnika

Još jedna ADB naredba koju Matlog pojednostavljuje, funkcija Log Level može se koristiti za pregled određenih vrsta sistemskih događaja i poruka. Dolje je kratak opis različitih vrsta poruka, kako je opisano na web stranici Android Developers i označeno bojom da odgovara Matlogovoj oznaci.

Od najnižeg do najvišeg prioriteta:

  • V: Opširno (Opći sistemski događaji)
  • D: Debug
  • ja: Informacije
  • W: Upozorenje
  • E: Greška
  • F: Kobno
  • S: Tiho (najviši prioritet, na kojem se nikad ništa ne ispisuje)

Značajka Razina zapisnika ima odgovarajući popis ovih poruka, koji može filtrirati zapisnik na svakoj razini prioriteta. Odabirom razine zapisnika prikazat će se samo događaji na vlastitoj razini prioriteta i višoj, olakšavajući jednostavnu identifikaciju i grupiranje pogreške umjesto da zahtijevaju ručno pomicanje kroz brojne retke teksta – koji ponekad mogu biti u tisućama – učiniti tako.

Set filtara pretraživanja za “Apktool”

Filteri

Filtri se također mogu koristiti za sortiranje podataka dnevnika. Pokretanjem pretraživanja po ključnoj riječi, korisniku je omogućeno vidjeti samo poruke koje izričito navode ovu ključnu riječ. Korisne ključne riječi mogu uključivati ​​naziv neispravne aplikacije ili čak riječ "greška" budući da obuhvaća instance pojma na svim razinama prioriteta, iako ne obuhvaćaju sve pogreške "Log Level".

Ako često pretražujete/filtrirate određene ključne riječi dok pomažete programeru u otklanjanju pogrešaka aplikacije (ili ako programer je izričito stvorio jedinstveni događaj dnevnika koji možete pretraživati), tada također možete spremiti filtar na koji se možete vratiti u budućnost. Ovo je korisno kada unaprijed znate što tražite, što će se dogoditi prilično često ako radite zajedno s programerom.

Spremni za otklanjanje pogrešaka?

Dok možda nećeš sada biti stručnjak za otklanjanje pogrešaka u Android aplikacijama, učenje kako prikupljati i slati Logcats može vas učiniti izvrsnim resursom za programere vaših omiljenih aplikacija. Koristeći Matlog i čije su značajke gore navedene, prikupljanje, sortiranje i slanje relevantnih informacija o neispravnoj aplikaciji nikad nije bilo lakše.


Jeste li koristili Matlog ili drugu Logcat aplikaciju? Je li vam ovaj vodič bio od pomoći? Javite nam u komentarima ispod!