Atjaunināts: 2020. gada janvāris.
Android Studio piedāvā bagātīgu iebūvēto izstrādes rīku paleti un vēl bagātīgāku spraudņu ekosistēmu. Pirmie trīs šīs sērijas raksti bija vērsti uz instalēšanu un iestatīšanu, kā arī uz vienkāršas mobilās lietotnes kodēšanu un palaišanu ar Android Studio. Tagad jūs iepazīsities ar dažiem progresīvākajiem rīkiem: trim iebūvētiem rīkiem un trim spraudņiem atkļūdošanai un Android lietojumprogrammas koda kvalitātes un produktivitātes uzlabošanai.
Šajā rakstā ir aprakstīti šādi Android Studio rīki:
Iebūvēti atkļūdošanas rīki
- Logcat
- Atkļūdošana
- Lint
Spraudņi izstrādātāju produktivitātei
- ADB ideja
- Codota
- Lombokas spraudnis
Kas jauns Android Studio 3.5 versijā
Uzziniet, ko meklēt jaunākajā Android Studio versijā, ieskaitot atbalstu Kotlin un atmiņas pārvaldības uzlabojumus un lietotāja saskarnes atsaucību.
Android lietotņu reģistrēšana un atkļūdošana
Buggy lietotne ir drošs veids, kā aizdzīt potenciālos klientus. Logcat un Debug ir divi rīki, kas ir iebūvēti Android Studio, kurus varat izmantot, lai identificētu un novērstu Android koda kļūdas.
Android reģistrēšana: Logcat
Katram "bagiju" scenārijam jums var nebūt vajadzīgs vai vēlaties pilnvērtīgu atkļūdotāju. Dažos gadījumos pietiek reģistrēt un labot noteiktu mainīgo vērtības. Android Studio Logcat ir lieliski piemērots šim uzdevumam.
Logcat ir komandrindas rīks (integrēts Android Debug Bridge - ADB), kas izgāž a žurnāls sistēmas ziņojumu, kas var palīdzēt atrast un novērst problēmas jūsu kodā. Ziņojumi ietver kaudzes pēdas, kad ierīce rada kļūdu, un reģistrē ziņojumus, kurus esat mērķtiecīgi ievietojis android.util.Log
klasē. Logcat ir tik noderīgs, ka tas ir integrēts tieši Android Studio, kur tam varat piekļūt no Skats izvēlni vai rīka loga joslu.
The Logcat logs ir sadalīts horizontālā nolaižamo sarakstu un citu vadīklu rindā, kam seko ziņojuma apgabals. No kreisās uz labo vadīklas ir:
- Nolaižamais saraksts, kas identificē pievienotās ierīces un emulatorus. (Skatīt 1. attēlu.)
- Nolaižamais saraksts, kas identificē instalētās APK pakotnes atlasītajā ierīcē.
- Mežizstrādes līmeņu nolaižamais saraksts:
- Mērķis: rādīt visus ziņojumus.
- Atkļūdošana: parādiet atkļūdošanas žurnāla ziņojumus, kas ir noderīgi tikai izstrādes laikā, kā arī nolaižamajā sarakstā zemākus ziņojumu līmeņus.
- Informācija: parādiet paredzamos žurnāla ziņojumus parastai lietošanai, kā arī zemāk esošos ziņojumu līmeņus nolaižamajā sarakstā.
- Brīdināt: parādiet iespējamās problēmas, kas vēl nav kļūdas, kā arī nolaižamajā sarakstā zemāk esošo ziņojumu līmeni.
- Kļūda: parādīt problēmas, kas izraisījušas kļūdas - izmesti izņēmumi, kā arī ziņojuma Assert līmenis.
- Apgalvojiet: parādiet problēmas, kurām izstrādātājs sagaida, ka tām nekad nevajadzētu notikt.
- Meklēšanas josla, kurā tiek parādīti tikai tie ziņojumi, kas satur šajā vadīklā ievadīto tekstu.
- Atzīmēšanas rūtiņa, kas ļauj meklēšanas joslā izmantot regulāras izteiksmes. Piemēram, 1. attēla kontekstā jūs varat norādīt SystemClock | AlarmManager (t.i., ziņojumā jāietver vai nu vārds).
- Nolaižamais saraksts ziņojumu filtrēšanai, ieskaitot šādas opcijas:
- Nav filtru (noklusējums) izraisa visu izvēlētās ierīces ziņojumu parādīšanos neatkarīgi no izvēlētās APK pakotnes.
- Rādīt tikai atlasīto lietojumprogrammu atlasītajā ierīcē parāda tikai tos ziņojumus par atlasīto APK pakotni, kuri ir atbilstošā žurnāla līmenī vai zemāk.
- Rediģēt filtra konfigurāciju ļauj izveidot pielāgotu filtru.
Avota kodā varat ievietot zvanus uz dažādiem android.util.Log
metodes ziņojumu reģistrēšanai. Piemēram, jūs varat piezvanīt public static int i (virknes tags, virknes ziņojums)
reģistrēties INFO
līmeņa ziņojums vai publiskais statiskais int w (virknes tags, virknes ziņojums)
reģistrēties a BRĪDINĀT
līmeņa ziņa.
Jebkurai metodei virkne tika nodota tagu
identificē ziņojuma avotu (piem., metodi, kādā tika izsaukta šī reģistrēšanas metode), un virkni nodeva tālāk ziņojums
identificē reģistrējamo ziņojumu.
Varat arī piezvanīt System.out
'smiltis System.err
's izdrukāt ()
un println ()
metodes. Zvani uz System.out
metodes paveic to pašu, ko log.i ()
aicina; zvani uz System.err
metodes paveic to pašu, ko log.w ()
zvani.
2. attēlā vienīgie parādītie ziņojumi ir piemēri lietotnes procesam, kas darbojas emulētajā Nexus 5X ierīcē. Turklāt šajos ziņojumos jābūt onCreate
un jāpieņem Rādīt tikai atlasīto lietojumprogrammu filtru.
Vairāk par Logcat
Lai uzzinātu vairāk par Logcat, skatiet Google sadaļu “Rakstīt un skatīt žurnālus, izmantojot Logcat”. Izpēti arī android.util.Log
klases dokumentācija.
Atkļūdošana Android: atkļūdošana
Logcat izmantošana, lai reģistrētos un labotu kodu, ir piemērota ļoti vienkāršām lietotnēm. Sarežģītākām lietotnēm šis atkļūdošanas veids var būt garlaicīgs. Tā vietā jūs vēlaties kaut ko tādu, kas ļauj atkļūdot lietotnes izpildāmo kodu. Android Studio iebūvētais atkļūdošanas rīks piedāvā daudzas iespējas, tostarp šādas:
- Atlasiet ierīci, kurā atkļūdot savu lietotni.
- Iestatiet pārtraukuma punktus lietojumprogrammas kodā (Java, Kotlin vai C / C ++).
- Pārbaudiet mainīgos un novērtējiet izteiksmes izpildlaikā.
Pirms šī atkļūdošanas rīka izmantošanas ir daži priekšnoteikumi:
- Ja jūsu lietotnē ir iekļauts C / C ++ avota kods, jums būs jāinstalē LLDB no SDK pārvaldnieka (skat. 3. attēlu). Par laimi, šīs sērijas lietotnes piemērs (W2A) nesatur C / C ++ kodu, tāpēc mēs varam ignorēt šo priekšnoteikumu.
Džefs Frīzens
- Pievienotā ierīcē ir jāiespējo atkļūdošana. Tomēr, ja izmantojat emulatoru (kuru mēs izmantojam šajā piemērā), varat ignorēt šo priekšnoteikumu. Atkļūdošana pēc noklusējuma ir iespējota emulētās ierīcēs.
- Jums jāpalaiž atkļūdojams būvēšanas variants. Pēc noklusējuma tas ir izveidots jums, tāpēc daudzos gadījumos (ieskaitot šo piemēru) jums par to nav jāuztraucas.
Izpildīsim ātru atkļūdošanas sesiju.
Vienkārša Android atkļūdošana
Pieņemot, ka izmantojat Android Studio, izmantojot lietojumprogrammas parauga redaktora logu (W2A.java), atveriet, pirmais solis ir iestatīt pārtraukuma punktu public void onCreate (pakete saglabātaInstanceState)
līnija. Iestatiet pārtraukuma punktu, iezīmējot šo līniju un veicot kādu no šīm darbībām:
- Noklikšķiniet uz notekas laukuma kreisajā pusē no līnijas; pēc atbildes līnijai vajadzētu kļūt sārtai.
- Atlasiet Pārslēgt līnijas pārtraukuma punktu no Palaist izvēlne.
- Nospiediet Ctrl un F8 vienlaicīgi.
Tagad atlasiet Atkļūdot lietotni no Palaist izvēlnē vai rīkjoslā noklikšķiniet uz atbilstošās ikonas. Ja emulators nedarbojas, jūs ievērosiet Atlasiet Izvietošanas mērķis dialoglodziņš. Es izvēlējos Nexus 5X API 15 un noklikšķinājis labi.
Kamēr jūs gaidāt, līdz emulētā ierīce būs tiešsaistē, noklikšķiniet uz Atkļūdošana rīkjoslas loga joslā, lai parādītu Atkļūdošana logs. Galu galā jums vajadzētu redzēt kaut ko līdzīgu 4. attēlam.
Džefs FrīzensThe Atkļūdošana logā ir redzamas ikonas, kā pāriet, ievadīt metodi un iziet no tās, kā arī citas darbības. 5. attēlā parādīts, kas notiek, kad mēs pārkāpt pāri metode.
Džefs FrīzensNoklikšķiniet uz atbilstošās ikonas un atlasiet Pārkāpt pāri no Palaist izvēlni vai nospiediet F8. Tas ļauj mums turpināt dziļāk onCreate ()
metodi, vienlaikus pārspējot katru metodi.
Atlasiet līniju ar aizvēršanu }
raksturs onCreate ()
metodi, pēc tam atlasiet Palaidiet uz kursoru. Jūs saņemsit paziņojumu, ka programma darbojas. Pēc ierīces atbloķēšanas jums vajadzētu redzēt lietotnes darbības loga piemēru.
Vairāk par atkļūdošanu
Apskatiet Google sadaļu “Atkļūdot savu lietotni”, lai uzzinātu vairāk par atkļūdošanu Android Studio; piemēram, kā izmantot dažāda veida pārtraukumpunktus.
Atkļūdošana ar GAPID
Lai gan šeit tas nav apskatīts, es iesaku pārbaudīt GAPID: Graphics API Debugger - atkļūdošanas rīku kolekciju, kas ļauj pārbaudīt, pielāgot un atkārtot zvanus no Android lietotnes uz grafikas draiveri.
Kodu pārbaude ar Lint
Neatkarīgi no tā, cik rūpīgi jūs to rakstāt, avota kods, iespējams, satur kļūdas, stilistiskas problēmas, un tas var atsaukties uz resursiem, kas ir neaktīvi viena vai otra iemesla dēļ. A linter ir rīka veids, kas skenē pirmkodu, lai atrastu pierādījumus par šiem un citiem nejaukajiem pūkumiem, par kuriem tas ziņo izstrādātājam.
Lint ir iebūvēts linteris Android SDK. Varat to izmantot, lai atrastu tādas problēmas kā novecojuši elementi un API izsaukumi, kurus neatbalsta jūsu mērķa API.
Lai palaistu Lint no Android Studio, atlasiet Pārbaudīt kodu ... no Analizēt izvēlne. Šādi rīkojoties, tiek aktivizēta Norādiet pārbaudes jomu dialoglodziņš.
Džefs FrīzensDialoglodziņā atlasiet vajadzīgo darbības jomu (šajā gadījumā visu projektu) un pēc tam noklikšķiniet uz labi sākt pārbaudi. Rezultāti tiks parādīti Pārbaužu rezultāti logā, kur tie ir sakārtoti pēc kategorijas.
Džefs FrīzensPatiesībā pēc savas būtības, Lint ir izvēlējies dažus pūkas gabalus, kas citādi varētu pārblīvēt lietojumprogrammas kodu. Kad esat pamanījis, ir viegli salabot trīs Java brīdinājumus, kas parādīti 8. attēlā: vienkārši paziņojiet androidAnimācija
Privāts
un noņemiet ģipšus no abiem findViewById ()
metodes izsaukumi.
Vairāk par Lintu
Lai uzzinātu vairāk par Lint lietošanu Android Studio un uzzinātu par Android SDK atsevišķo rīku Lint, skatiet sadaļu “Uzlabojiet savu kodu, izmantojot savārstījuma pārbaudes”.
Android Studio spraudņu instalēšana un izmantošana
Lai gan iebūvētajiem rīkiem ir savs nopelns, daudzi citi rīki ir pieejami kā spraudņi. Šajā sadaļā aplūkosim trīs spraudņus kodēšanas produktivitātes uzlabošanai Android Studio:
- ADB ideja
- Codota
- Lombokas spraudnis
Android Studio spraudņu pārvaldnieks
Android Studio spraudņu pārvaldnieks ļauj ļoti viegli atrast un instalēt spraudņus. Aktivizējiet spraudņu pārvaldnieku, atlasot Fails >Iestatījumi sekoja Spraudņi no Iestatījumi dialoglodziņš:
Džefs FrīzensPēc tam noklikšķiniet uz Pārlūkot krātuves ... lai aktivizētu Pārlūkot krātuves dialoglodziņš, kurā parādīts pilns atbalstīto spraudņu saraksts. Mēs izmantosim šo dialogu, lai izvēlētos mūsu pirmo spraudni ADB Idea.
Džefs FrīzensPalieliniet savu Android produktivitāti
Kodu saīsnes: ADB ideja
ADB ideja paātrina Android ikdienas attīstību, nodrošinot ātru piekļuvi parasti izmantotajām ADB komandām, piemēram, lietotnes palaišanai un atinstalēšanai.
Atlasiet ADB ideja spraudņu krātuves sarakstā noklikšķiniet uz Uzstādīt pogu. Android Studio turpina lejupielādēt un instalēt spraudni. Pēc tam tas atkārtoti uzlīmē Uzstādīt uz Restartējiet Android Studio. Katram spraudnim pēc noklikšķināšanas man bija jāatlasa spraudnis Restartējiet Android Studioun pēc tam otrreiz noklikšķiniet uz šīs pogas, lai restartētu Android Studio.
Džefs FrīzensPēc instalēšanas Android Studio ļauj piekļūt ADB idejai no tās Rīki izvēlne. Atlasiet Rīki> ADB ideja un izvēlētajā uznirstošajā izvēlnē izvēlieties atbilstošo komandu.
Džefs FrīzensPēc tam, kad es izvēlējos ADB restartējiet lietotni, Es novēroju šādus ziņojumus Notikumu žurnāls logu, kā arī restartēto lietotni manā Amazon Kindle ierīcē.
Džefs FrīzensAtrodiet izmantojamo kodu: Codota
Jūs varat izmantot Codota spraudnis, lai piekļūtu meklētājprogrammai Codota, kas ļauj pārlūkot miljoniem publiski pieejamu Java avota koda fragmentu, lai atrastu risinājumus Android kodēšanas problēmām.
Džefs FrīzensAtlasiet Codota spraudņu krātuves sarakstā un pēc tam noklikšķiniet uz Uzstādīt pogu. Pēc tam, kad Android Studio būs lejupielādējis un instalējis spraudni, tas atkārtoti iezīmēs Uzstādīt pogu uz Restartējiet Android Studio. Restartējot, tiek aktivizēta Codota.
Pēc restartēšanas jūs sastopaties ar Codota autentifikācija dialoglodziņš. Noklikšķiniet uz saites un izpildiet norādījumus, lai saņemtu marķieri. Pēc tam ielīmējiet marķieri iepriekš minētajā dialoglodziņā un noklikšķiniet Ej.
Džefs FrīzensAndroid Studio ļauj piekļūt Codota, redaktora logā ar peles labo pogu noklikšķinot uz Java koda un atlasot Iegūstiet atbilstošus piemērus izvēlnes vienums, kā parādīts 16. attēlā.
Džefs FrīzensNoklikšķinot uz šī izvēlnes vienuma, pārlūkprogramma parāda lapu ar atbilstošiem kodu piemēriem. Piemēram, nākamajā lappusē ir piemēri, kas attiecas uz findViewById
:
Autogenerēt Java kodu: Lombok
Projekts Lombok piedāvā anotāciju komplektu, ko varat izmantot katlu koda vietā, tādējādi ietaupot laiku, izrakstot šo kodu ar rokām.
Džefs FrīzensAtlasiet Lombokas spraudnis spraudņu krātuves sarakstā noklikšķiniet uz Uzstādīt. Pēc tam, kad Android Studio būs lejupielādējis un instalējis spraudni, tas jums to aicinās Restartējiet Android Studio. Restartējot, tiek aktivizēts Lombok spraudnis.