Se vam je vaša najljubša aplikacija kdaj nenadoma zrušila? Želite pomagati razvijalcu pri odpravljanju napak, kaj se je zgodilo? Naučite se zajeti in filtrirati Logcats z našim vodnikom.
Hrvati mahajo z zastavo EU, ko praznujejo pristop Hrvaške k Evropski uniji na Trgu bana Jelešića v Zagrebu 30. junija 2013. Več deset tisoč Hrvatov je v nedeljo opolnoči (22.00 GMT) pozdravilo vstop države v Evropsko unijo, skoraj dve desetletji po koncu krvave osamosvojitvene vojne nekdanje jugoslovanske republike. FOTO AFP / STRINGER
Vsem se nam je kdaj zgodilo. Ni sram priznati. Včasih se aplikacije za Android zrušijo. Ne glede na to, ali uporabljate popolnoma osnovno napravo za zagon Google Zemljevidov ali zelo prilagojen ROM z modulom Xposed za izboljšajte Google Hangouts, se lahko pojavijo zrušitve aplikacij in druge težave, ki postanejo celo precejšnja ovira. To še posebej velja pri razvoju manjših popravkov in aplikacij, kot jih je veliko na naši spletni strani. Ko se pojavijo težave, je eden najbolj konstruktivnih in koristnih vpogledov, ki jih lahko uporabnik posreduje razvijalcu v naravo zrušitve, zagotavljanje
Logcat. Čeprav je zelo koristno za razvijalce, se lahko zdi pridobivanje teh informacij za običajnega uporabnika nekoliko zastrašujoče.Običajno vključuje orodja ukazne vrstice prek ADB, je Logcat nedosegljiv za mnoge uporabnike, ki nimajo veliko izkušenj z ukazno vrstico. Vendar pa je izdaja določenih aplikacij odpravila ali vsaj močno zmanjšala vpletenost ukazov ADB pri pridobivanju in pošiljanju Logcat, zaradi česar je to tako enostavno kot nekaj dotikov zaslona. V naši neskončni misiji pomoči razvijalcem pri razvoju je tukaj vodnik za začetnike, ki uporabnike nauči, kako poslati Logcat.
Kaj je Logcat in kako ga pripravimo?
Logcat je orodje ADB Shell, ki se uporablja za pridobivanje dnevnika vseh sistemskih dogodkov. To vključuje napake, opozorila, sledi skladov in splošne sistemske dogodke. Ko pride do napake, se skozi ta dnevnik prikažejo ključne informacije, ki kažejo na vir napake, zaradi česar je zelo uporabno orodje za odpravljanje težav. Običajno se ti črpajo in filtrirajo prek ukazov ADB. Vendar aplikacije, kot je npr aLogcat, Catlogin naše izbrano orodje za ta članek, Matlog, so uporabnikom prihranili trud s sestavljanjem teh ukaznih orodij v GUI aplikacije, ki jo je mogoče prenesti iz Trgovine Play.
Kot že omenjeno, Matlog uporabljamo za zbiranje Logcatov. Izbran zaradi preprostega, a uporabniku prijaznega vmesnika, je Matlog izdelal XDA Junior Member plusCubed in temelji na Nolana Lawsona odprtokodna aplikacija Catlog. Kot Catlog, Matlog je lahko sestavljeno iz vira, oz brezplačno prenesete iz trgovine Google Play. Čeprav vam rootanje omogoča, da med namestitvijo preskočite korak, za zbiranje Logcats ni potreben korenski dostop. Če vaša naprava ni zakoreninjena, bo en sam ukaz lupine ADB odobril aplikaciji dostop do branja dnevnikov vaše naprave. Še niste nastavili ADB na svojem računalniku? Ni problema, sledite tem korakom, da ga začnete uporabljati.
Opomba: telefoni Huawei imajo popolnoma onemogočen izhod Logcat. Spremeniti boste morali skrito nastavitev preden nadaljujete s preostalim delom tega vodnika.
Nastavitev ADB
Prvič, prenesite binarno datoteko ADB neposredno iz Googla za vaš določen OS in ga ekstrahirajte v ločen imenik v vašem računalniku. Naslednji, namestite ustrezen gonilnik za vaš telefon. Nato omogočite »Odpravljanje napak USB« v nastavitvah --> možnosti za razvijalce. Če ne vidite možnosti za razvijalce, jih boste morali omogočiti tako, da odprete Nastavitve --> O telefonu in nato 7-krat tapnete številko gradnje. Nazadnje se prepričajte, da ADB deluje, tako da zaženete ukazni poziv v istem imeniku kot binarni zapis ADB (desni klik --> "odpri ukazni poziv tukaj") in zaženete naslednji ukaz:
adb devices
Če vidite serijsko številko svoje naprave (in na njej ne piše nepooblaščeno), ste zlati. Če na telefonu vidite pojavno okno s prošnjo, da svojemu računalniku omogočite dostop do ADB, recite pritrdilno. Če se nič ne zgodi, poskusite znova zagnati računalnik/telefon in ga znova priključiti na računalnik. V nasprotnem primeru poskusite znova namestiti gonilnik.
Nastavitev Matloga
Zdaj, ko imate ADB pripravljen in deluje (upajmo), je vse, kar morate storiti, da Matlogu omogočite zmožnost zajemanja Logcats, izdati naslednji ukaz v lupini ADB. Še enkrat, če je vaša naprava že zakoreninjena, vam tega ukaza ni treba zagnati, saj je to potrebno samo za telefone brez zakoreninjenja.
adbshellpmgrantcom.pluscubed.matlogandroid.permission.READ_LOGS
Ko je omogočen in odprt, bo Matlog prikazal sistemske dogodke v realnem času. Lahko se dotaknete gumba za premor, da to zaustavite, nato tapnete meni s tremi elipsami in izberete »počisti«, da polje znebite tujih podatkov. Priporočljivo je, da to storite med pripravami na beleženje nedelujoče aplikacije, da zmanjšate velikost dnevnika. Če želite skrajšati korake in s tem še dodatno skrajšati dolžino dnevnika, dodajte pripomoček Matlog na začetni zaslon poleg zadevne aplikacije, ki se zruši, kot je prikazano na desni. V tem primeru, Apktool X je naša okvarjena aplikacija.
Z dotikom pripomočka lahko poimenujete in začnete snemati dnevnik. Nato preprosto ponovite napako takoj po začetku beleženja, kar bo Logcat napolnilo z ustreznimi informacijami za vašo težavo. Ko se težava ponovi, se znova dotaknite pripomočka, da dokončate snemanje dnevnika.
Po tem se bo Matlog odprl za zajeti dnevnik. Tapnite elipso in izberite »pošlji«, da pošljete dnevnik kot priloženo besedilno datoteko skupaj s splošnimi informacijami o napravi. To je to! Vaš Logcat je bil uspešno zajet in poslan profesorju Oaku.
V mojem zgornjem primeru lahko povem, da se je Apktool X zrušil zato, ker moja naprava ni zakoreninjena. Doh! Moral bi v celoti Preberi članek preden poskusite uporabiti aplikacijo.
To je bilo prelahko
Seveda ni vseh vprašanj tako enostavno zajeti. Včasih težave pri zagonu ali težave, ki trajajo dlje časa, lahko zahtevajo različne funkcije aplikacije za zajemanje. V takšnih primerih boste želeli pustiti, da Matlog teče v ozadju (ne zaustavite ga ali ga počistite) in uporabite funkciji Raven dnevnika in Filter za razčlenjevanje podatkov.
Čeprav običajno ni edina potrebna metoda za zbiranje ustreznih podatkov – nekatere situacije zahtevajo več konteksta – vsako od teh orodij je mogoče uporabiti na daljših dnevnikih za razvrščanje in določanje podatkov za razvijalec. Seveda je to odvisno od narave napake in zahtev razvijalca. Če želite uporabiti katerega koli od teh, preprosto zaženite Matlog, ponovite svojo težavo, se pomaknite nazaj v Matlog, tapnite meni s pikami in izberite eno od teh dveh metod razvrščanja.
Nivo dnevnika
Še en ukaz ADB, ki ga je poenostavil Matlog, funkcijo Log Level, lahko uporabite za ogled določenih vrst sistemskih dogodkov in sporočil. Spodaj je kratek opis različnih vrst sporočil, kot jih opisuje spletno mesto za razvijalce Android in barvno kodiranih, da se ujemajo z Matlogovim označevanjem.
Od najnižje do najvišje prioritete:
- V: podrobno (splošni sistemski dogodki)
- D: Odpravljanje napak
- jaz: Informacije
- W: Opozorilo
- E: Napaka
- F: Usodno
- S: Tiho (najvišja prioriteta, na kateri se nikoli nič ne natisne)
Funkcija Raven dnevnika ima ustrezen seznam teh sporočil, ki lahko filtrirajo dnevnik na vsaki ravni prioritete. Če izberete raven dnevnika, bodo prikazani samo dogodki na lastni stopnji prioritete in višje, kar olajša identifikacijo in združevanje v skupine napak, namesto da bi zahtevali ročno pomikanje po številnih vrsticah besedila – ki jih je včasih lahko na tisoče – torej.
Filtri
Filtre je mogoče uporabiti tudi za razvrščanje podatkov dnevnika. Z začetkom iskanja po ključnih besedah lahko uporabnik vidi samo sporočila, ki izrecno omenjajo to ključno besedo. Uporabne ključne besede lahko vključujejo ime nedelujoče aplikacije ali celo besedo »napaka«, saj zajema primere izraza na vseh prednostnih ravneh, čeprav ne zajemajo vse napake na ravni dnevnika.
Če pogosto iščete/filtrirate določene ključne besede, ko razvijalcu pomagate pri odpravljanju napak v aplikaciji (ali če razvijalec je izrecno ustvaril edinstven dogodek dnevnika, ki ga lahko iščete), potem lahko shranite tudi filter, na katerega se lahko vrnete v prihodnost. To je uporabno, če že vnaprej veste, kaj iščete, kar se bo zgodilo precej pogosto, če delate skupaj z razvijalcem.
Ste pripravljeni na odpravljanje napak?
Medtem ko morda ne zdaj če ste strokovnjak za odpravljanje napak v aplikacijah za Android, če se naučite zbirati in pošiljati Logcats, boste lahko odličen vir za razvijalce vaših najljubših aplikacij. Z uporabo Matloga in njegovih funkcij, opisanih zgoraj, zbiranje, razvrščanje in pošiljanje ustreznih informacij o nedelujoči aplikaciji še nikoli ni bilo lažje.
Ste uporabljali Matlog ali drugo aplikacijo Logcat? Ali se vam je zdel ta vodnik koristen? Sporočite nam v komentarjih spodaj!