Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Windows 7, XP
  • Aplikacija za otklanjanje grešaka na androidu putem usb-a. Šta je "USB Debugging" način rada na Androidu i kako se uključuje

Aplikacija za otklanjanje grešaka na androidu putem usb-a. Šta je "USB Debugging" način rada na Androidu i kako se uključuje

U mnogim uputstvima za rutiranje i modificiranje firmvera, morate omogućiti USB otklanjanje grešaka i OEM fabričko otključavanje. Šta je USB otklanjanje grešaka? Čemu služi i kako ga omogućiti, možete saznati iz ovog članka!

Čemu služi USB otklanjanje grešaka?

USB debugging se koristi za korištenje servisa za otklanjanje grešaka u aplikacijama i promjenu parametara uređaja na Android OS-u (provjeriti kako aplikacija i sistem u cjelini funkcioniraju i koji su kvarovi nastali) pomoću uslužnog programa zvanog ADB.

Šta je OEM fabričko otključavanje?

Počevši od Androida 5.0, mnogi proizvođači su počeli implementirati dodatni sigurnosni mehanizam protiv neovlaštenih promjena na sistemskim particijama. Kao rezultat toga, funkcija "OEM Factory Unlock" je uvedena u odjeljak "Meni za programere", kada se aktivira, moći ćete flešovati Recovery treće strane i prilagođene firmvere.

Nemojte brkati OEM fabričko otključavanje sa otključavanjem bootloadera, koje zahtijevaju mnogi proizvođači - Xiaomi, HTC, Huawei, Google Pixel, Sony.

Android programer meni

USB otklanjanje grešaka i OEM fabričko otključavanje su sve u jednom skrivenom dijelu Android postavki koji se zove Developer Menu. Da biste vidjeli ovaj odjeljak, morate slijediti jednostavnu proceduru aktivacije.

Kako da omogućim USB otklanjanje grešaka?

Apsolutno u svim Android uređajima, bez obzira da li se radi o pametnom telefonu ili tabletu, postoji USB otklanjanje grešaka Meni -> Postavke.

Moguće opcije lokacije

Unatoč činjenici da je USB otklanjanje grešaka u postavkama, opcije za lokaciju u meniju mogu biti različite i imaju nekoliko opcija kako je pronaći! Razmotrimo 8 mogućih opcija od novijih verzija Androida do starijih.

Opcija br. 1 za Android 4.2 - Android 7.1:

Meni -> Postavke -> O pametnom telefonu / O tabletu -> Postavke -> Za programere -> USB otklanjanje grešaka- krpelj.

Opcija broj 2.1 za Xiaomi (nove MIUI verzije)

Meni -> Postavke -> O telefonu-> MIUI verzijai kliknite na njega oko 7 - 10 puta, a zatim se vratite na Postavke -> Napredno -> Za programere -> USB otklanjanje grešaka- krpelj.

Opcija broj 2.2 za Xiaomi (stare verzije MIUI)

Meni -> Postavke -> Općenito -> O pametnom telefonu / O tabletu ->Napravite broj i kliknite na njega oko 7-10 puta, a zatim se vratite na Postavke -> Za programere -> USB otklanjanje grešaka- krpelj.

Opcija #3 za Android 8.X i novije verzije:

Na Androidu 8.0 i novijim, postavke su malo ažurirane, a sada da biste došli do menija programera i omogućili "USB otklanjanje grešaka" potrebno je: idite na Sistem -> O uređaju (tablet/telefon) -> Kliknite 5-7 puta na broj Build" i vratite se na meni Sistem -> Programer.

Za Android verzije 1.6 - 4.2

Opcija broj 4:

Meni -> Postavke -> Razvoj -> USB otklanjanje grešaka - označite polje

Opcija broj 5:

Meni -> Postavke -> Za programere -> USB otklanjanje grešaka- krpelj

Opcija broj 6:

Meni -> Postavke -> Prijave -> Razvoj -> USB otklanjanje grešaka (Android 2.2 - 3.0)

Opcija broj 7:

Meni -> Postavke -> Više -> Opcije za programere -> USB otklanjanje grešaka- krpelj

Opcija #8 za Android 4.2 i novije verzije:

Meni -> Postavke -> Sistem -> O pametnom telefonu / O tabletu -> Broj izrade i kliknite na njega oko 7-10 puta, a zatim se vratite na Postavke -> Za programere -> USB otklanjanje grešaka- krpelj

[kolaps]

Nakon što omogućite USB otklanjanje grešaka, autorizujte svoj računar! (Za Android 4.2 i novije verzije)

Prilikom prvog povezivanja na računar i unošenje neke komande ili dobijanje Root prava, imat ćete zahtjev za povjerenje računar na koji je sada povezan Android! Ovaj zahtjev će se pojaviti na svakom novom računaru ili laptopu! Označite polje i pritisnite dugme OK.USB otklanjanje grešaka je omogućeno.

Omogućeno USB otklanjanje grešaka i Android uređaj
nije detektovano?

Prvo ono što ćete morati da verujete jeste prisustvo instaliranih USB drajvera na računar ili ih ponovo instalirajte/ažurirajte. Još jedan problem jer Android nije detektovan - unutra je zaključano stanje! Deblokiraj vaš pametni telefon ili tablet! Ne koristite port USB 3.0, samo USB 2.0.

Ako i dalje ne možete da instalirate USB otklanjanje grešaka na računaru, pokušajte da promenite način na koji se povezujete sa računarom. U trenutku kada ste već povezali svoj pametni telefon ili tablet na PC, povucite gornju informacijsku traku "zavjesu" prema dolje -> izaberite USB vezu i aktivirati PTP mod.

Ako želite da se povežete preko WI-FI

Nakon što ste omogućili ovu opciju na Androidu, možete povezati svoj pametni telefon na PC i unijeti potrebne adb komande ili dobiti Root prava!

Imate li još pitanja? Napišite ih u komentarima, recite nam šta ste radili ili obrnuto!

To je sve! Pročitajte više korisnih članaka i uputa u odjeljku. Ostanite na stranici, bit će još zanimljivije dalje!

USB otklanjanje grešaka vam omogućava da koristite uslugu za otklanjanje grešaka u aplikacijama i uređajima na Android OS-u: proverite kako aplikacija i sistem rade, koji su kvarovi nastali.

Omogućite USB otklanjanje grešaka

Na svim Android uređajima, USB otklanjanje grešaka se nalazi u Meni> Postavke, ali opcije lokacije mogu varirati, na primjer:

Meni> Postavke> Razvoj> USB otklanjanje grešaka (uključeno) Meni> Postavke> Aplikacije> Razvoj> USB otklanjanje grešaka (uključeno) Izbornik> Postavke> Više> Opcije za programere> USB otklanjanje grešaka Meni> Postavke> Općenito> O pametnom telefonu / O tabletu> Broj verzije ( kliknite na njega 7-10 puta), a zatim se vratite na Postavke> Za programere> USB otklanjanje grešaka (uključeno)

Nakon omogućavanja USB otklanjanja grešaka

Otključajte svoj pametni telefon ili tablet. Nemojte koristiti USB 3.0 port, samo USB 2.0 kada ste povezani sa računarom.

Kada se uređaj prvi put poveže sa računarom, od vas će biti zatraženo da verujete računaru: označite polje i kliknite na OK. USB otklanjanje grešaka je omogućeno.

Instaliranje USB aplikacije za otklanjanje grešaka

Za otklanjanje grešaka koristi se ADB program (Android Debug Bridge). ADB je dio Android SDK-a koji vam je potreban.

Preuzmite zip arhivu sa Android SDK-om, ona sadrži fasciklu adt-bundle-windows-x86_64-20140702, koja sadrži sam SDK. Raspakujemo ga na kompjuter. Na primjer, postavili smo folder u korijenu C pogona, tj. put do SDK-a će biti ovakav: C: \ adt-bundle-windows-x86_64-20140702 \

Uverite se da je računar povezan na Internet i pokrenite program SDK Manager koji se nalazi u fascikli adt-bundle-windows-x86_64-20140702.

Ako se SDK Manager ne pokrene, instalirajte Java SE.

Nakon pokretanja SDK Managera, pojavit će se prozor za instalaciju. Moramo preuzeti i instalirati

✓ Android SDK alati za platformu ✓ Android SDK alati ✓ Google Usb Driver paket

Označavamo ove tri stavke na listi i poništavamo sve ostale. Pritisnite "Instaliraj" i sačekajte dok program preuzme komponente.

USB drajveri za 32-bitni i 64-bitni Windows će se preuzeti u fasciklu C: \ adt-bundle-windows-x86_64-20140702 \ extras \ google \ usb_driver (instalirajte ih kasnije ako ne možete da pronađete zvanične drajvere za svoj tablet ili pametni telefon).

Povezujemo naš uređaj sa računarom - računar će otkriti novi hardver. Instalirajte drajvere sa sajta proizvođača ili iz foldera gde su ranije preuzeti (instalacija se vrši preko Task Manager-a> * Nepoznati uređaj *> desni taster miša> Ažuriraj softver drajvera ..> potraži drajver na računaru> preuzeti drajver ).

Nakon instaliranja drajvera, novi uređaj "ADB Interface" će se pojaviti u upravitelju uređaja.

Ako uređaj nije otkriven u upravitelju kao ADB sučelje, provjerite upravljačke programe tableta ili pametnog telefona, isključite i uključite USB mod za otklanjanje grešaka, ponovo povežite uređaj na PC.

Pokretanje ADB programa

Najbolji način za rad sa ADB-om je preko Windows komandne linije. Da biste pozvali komandnu liniju, pritisnite "Start", a u polje za unos "Pronađi programe i datoteke" upišite cmd, pritisnite "Enter".

Da vidimo koji su uređaji povezani na računar, upisujemo naredbu:

C: \ adt-bundle-windows-x86_64-20140702 \ sdk \ platform-tools \ adb.exe uređaji

ADB će prikazati listu uređaja koji su trenutno povezani na računar. Ako se uređaj pojavi na komandnoj liniji, možete započeti otklanjanje grešaka.

Otklanjanje grešaka i2 Control V2.2 preko USB-a

Unesite (1):

C: \ adt-bundle-windows-x86_64-20140702 \ sdk \ platform-tools \ adb.exe logcat

Komandna linija će početi da prikazuje dnevnik vašeg pametnog telefona ili tableta.

Zaustavite dnevnik klikom Ctrl + C

Unesite (2):

C: \ adt-bundle-windows-x86_64-20140702 \ sdk \ platform-tools \ adb.exe logcat> log.txt

Sada će dnevnik ponovo pokrenut sa (1) biti sačuvan u tekstualnoj datoteci koja se nalazi u C: \ Korisnici \ * Korisničko ime * \ log.txt

Pokrenite aplikaciju i2 Control V2.2 na svom tabletu ili pametnom telefonu, pokrenite dnevnik (1), izvršite radnju koju želite da sačuvate dnevnik, zaustavite evidentiranje pritiskom na Ctrl + C.

Sačuvani zapisnik možete poslati tehničkoj podršci uz svoj projekat, opis problema, model i verziju firmvera tableta ili pametnog telefona na kojem je problem otkriven.

Članak će opisati kako povezati debugger s Android aplikacijom i proći kroz pozvane metode koristeći informacije dobivene nakon dekompilacije aplikacije.

Članak će opisati kako povezati debugger s Android aplikacijom i proći kroz pozvane metode koristeći informacije dobivene nakon dekompilacije aplikacije. Dobra vijest je da otklanjanje grešaka ne zahtijeva privilegije superkorisnika. Opisane tehnike mogu biti vrlo korisne prilikom testiranja penetracije mobilnih aplikacija, budući da možemo "probiti" kod dok program radi, primati i snimati informacije kojima inače nemamo pristup. Na primjer, možete presresti promet prije šifriranja i dobiti ključeve, lozinke i sve druge vrijedne informacije u hodu. Članak će biti koristan za pentestere i programere mobilnih aplikacija koji žele steći dublje znanje o mogućim napadima na Android platformu.

Zahtjevi okruženja za testiranje:

  • Operativni sistem: Windows / Mac OS X / Linux
  • Java (preporučuje se verzija 1.7)
  • IDE (Eclipse, IntelliJ IDEA, Android Studio)
  • Android SDK (https://developer.android.com/sdk/index.html?hl=i)
  • APKTool (https://code.google.com/p/android-apktool/)/APK Studio (http://apkstudio.codeplex.com)
  • Android uređaj / emulator

Ovaj članak će koristiti sljedeću konfiguraciju: Windows 8, Android Studio i IntelliJ IDEA. Uređaj: Nexus 4 s Androidom 4.4.4. Preporučujem da dodate sve uslužne programe u varijablu okruženja PATH kako biste lakše i brže pristupili ovim alatima.

Android aplikacijski paket (APK) korišten u članku možete preuzeti ovdje: com.netspi.egruber.test.apk .

Postavljanje uređaja

Upute u nastavku pomoći će vam da pripremite svoj uređaj za eksperimentiranje.

Aktiviranje odjeljka Developer Options

Za početak, otklanjanje grešaka putem USB-a mora biti omogućeno na Android uređaju (opcija za otklanjanje grešaka preko USB-a), što će vam omogućiti "komunikaciju" sa uređajem pomoću alata iz Android SDK-a. Međutim, prije toga morate aktivirati odjeljak Developer options. Na uređaju idite na Postavke> O telefonu i kliknite nekoliko puta na stavku Broj izrade, nakon čega bi se trebala pojaviti poruka da je aktiviran odjeljak Developer options.

Slika 1: Da biste aktivirali odjeljak Developer options, trebate kliknuti na broj Build nekoliko puta

Omogućite USB otklanjanje grešaka

Da biste omogućili USB otklanjanje grešaka, idite na Postavke> Opcije za programere i potvrdite okvir pored USB otklanjanja grešaka.

Slika 2: Omogućavanje opcije USB otklanjanja grešaka

Povezivanje uređaja i pokretanje ADB-a

Nakon povezivanja uređaja sa računarom preko USB porta, trebalo bi da se pojavi poruka "USB debugging connected on the device". Također biste trebali provjeriti možete li se povezati s uređajem koristeći Android Debug Bridge (ADB) aplikaciju uključenu u Android SDK (Android SDK Platform-tools paket). Na komandnoj liniji unesite sljedeću naredbu:

Uređaj bi se trebao pojaviti na listi.

Slika 3: Lista povezanih uređaja

Ako uređaj nije prikazan na listi, najvjerovatniji razlog su neispravno instalirani drajveri (u Windows-u). Ovisno o uređaju, drajver se može pronaći ili u Android SDK-u ili na web stranici proizvođača.

Provjera aplikacije za otklanjanje grešaka

Prije otklanjanja grešaka u Android aplikacijama, prvo morate provjeriti da li je to moguće. Provjera se može izvršiti na nekoliko načina.

Prvi način je trčanje Monitor Android uređaja uključeno u Android SDK (u folderu alati). Na Windows-u, datoteka se zove monitor.bat. Kada otvorite Android Device Monitor, uređaj će se pojaviti u odjeljku Uređaji.

Slika 4: Aplikacija za praćenje Android uređaja

Ako bilo koja aplikacija na uređaju može biti otklonjena, ta će se aplikacija također pojaviti na listi. Napravio sam probni program, ali lista je prazna jer program ne može biti otklonjen.

Drugi način da testirate svoju aplikaciju za otklanjanje grešaka je da ispitate datoteku AndroidManifest.xml iz Android paketa aplikacije (APK). APK je zip arhiva koja sadrži sve informacije potrebne za pokretanje aplikacije na Android uređaju.

Kad god se neka aplikacija preuzme iz Google Play trgovine, preuzima se i paket aplikacija. Svi preuzeti APK-ovi obično se pohranjuju na uređaju u folderu / data / app. Ako nemate prava superkorisnika, nećete moći dobiti listu datoteka iz / data / app direktorija. Iako, ako znate naziv APK datoteke, možete je kopirati pomoću uslužnog programa adb... Da biste pronašli naziv APK datoteke, unesite sljedeću naredbu:

Pojavljuje se komandna linija uređaja. Zatim unesite sljedeću naredbu:

pm lista paketa -f

Prikazaće se lista svih paketa na uređaju.

Slika 5: Lista paketa na uređaju

Gledajući listu, nalazimo testnu aplikaciju.

Slika 6: Paket generirane testne aplikacije (istaknut bijelom bojom)

Sada morate kopirati datoteku paketa. Otvorite ljusku i unesite sljedeću naredbu:

adb pull /data/app/ [.apk fajl]

Slika 7: Kopirajte APK datoteku sa uređaja u sistem

Sada morate otvoriti datoteku paketa i ispitati sadržaj AndroidManifest.xml. Nažalost, ne možemo samo raspakovati arhivu, jer je APK datoteka kodirana u binarnom formatu. Za dekodiranje se najčešće koristi uslužni program apktool iako koristim APK Studio jer ova aplikacija ima prijateljski GUI. Ostatak članka će govoriti o APK Studiju.

U APK Studiju kliknite na malu zelenu ikonu, dajte projektu ime i odredite putanju do APK datoteke. Zatim navedite let za spremanje projekta.

Slika 8: Kreiranje novog projekta u APK Studiju

Kada se APK otvori, odaberite datoteku AndroidManifest.xml i pogledajte opcije za oznaku aplikacije. Ako zastavica android: debuggable nije prisutna (ili je prisutna, ali je postavljena na false), tada se aplikacija ne može otkloniti greške.

Slika 9: Sadržaj datoteke AndroidManifest.xml

Promjena datoteke AndroidManifest.xml

Koristeći apktool uslužni program ili APK Studio, možemo modificirati datoteke i spakovati sadržaj nazad u paket. Sada ćemo modificirati AndroidManifest.xml datoteku tako da se aplikacija može otkloniti. Dodajte liniju android: debuggable = "true" unutar oznake aplikacije.

Slika 10: Promjena sadržaja oznake aplikacije

Nakon što dodate zastavu, kliknite na ikonu čekića i ponovo sastavite paket. Ponovno izgrađeni paket će se nalaziti u build/apk direktoriju.

Slika 11: Obnova paketa je uspješno završena

Nakon rekonstrukcije, paket je potpisan i može se ponovo instalirati na uređaj (sve Android aplikacije moraju biti potpisane). Većina aplikacija ne provjerava valjanost certifikata koji se koristi za potpisivanje. U suprotnom, morate promijeniti kod koji obavlja ovu provjeru.

Sada morate instalirati obnovljeni paket. Prvo uklonite staru aplikaciju pomoću sljedeće naredbe:

adb pm deinstalirati

Zatim instaliramo novi paket:

adb install [.apk fajl]

Također možete deinstalirati i instalirati paket pomoću jedne naredbe:

adb install -r [.apk fajl]

Slika 12: Instaliranje obnovljenog paketa

Provjerite da li se ponovo instalirana aplikacija ispravno pokreće na uređaju. Ako sve radi, vratite se na Android Device Monitor, gdje bi se trebala pojaviti aplikacija za testiranje.

Slika 13: Rekonstruisana aplikacija sada može biti otklonjena

Postavljanje razvojnog okruženja (IDE)

Sada možete priključiti debugger na obnovljenu aplikaciju, ali prvo morate kreirati projekat u razvojnom okruženju (ovaj članak koristi IntelliJ IDEA). Kreiramo novi projekat. U polju Naziv aplikacije navedite proizvoljno ime. U polju Ime paketa navedite ime koje se tačno poklapa sa hijerarhijom foldera ponovo izgrađenog paketa.

Slika 14: Kreiranje novog projekta u IntelliJ IDEA

Obično je naziv APK datoteke isti kao i struktura foldera, iako ako niste sigurni, u APK Studio provjerite hijerarhiju direktorija do mape u kojoj se nalaze datoteke aplikacije. U mom slučaju, ime i struktura foldera su potpuno isti (com.netspi.egruber.test).

Slika 15: Testirajte hijerarhiju direktorija aplikacije

Opozovite izbor u polju za potvrdu Create Hello World Activity i dovršite projekat (sve ostale opcije ostaju zadane). Novi projekat bi trebao izgledati otprilike ovako:

Slika 16: Hijerarhija foldera i datoteka novog projekta

Nakon kreiranja projekta, potrebno je dodati izvorni kod iz APK datoteke kako bi program za otklanjanje pogrešaka "znao" nazive simbola, metoda, varijabli itd. Dobra vijest je da se Android aplikacije mogu dekompilirati gotovo bez gubitka kvaliteta (izvorni kod će odgovarati originalu). Nakon dekompilacije, izvorni kod se uvozi u razvojno okruženje (IDE).

Dobijanje izvornog koda iz paketa aplikacije

Prvo, trebate pretvoriti APK u jar datoteku. Tada ćemo dobiti izvorni kod aplikacije pomoću java dekompajlera. Mi ćemo izvršiti konverziju u jar koristeći uslužni program dex2jar... Dex2jar ima datoteku d2j-dex2jar.bat koja se koristi za pretvaranje APK-a u jar. Sintaksa naredbe je prilično jednostavna:

d2j-dex2jar.bat [.apk fajl]

Slika 17: Pretvaranje APK-a u jar

Zatim otvorite ili prevucite rezultujuću datoteku u JD-GUI (ovo je java dekompajler).

Slika 18: Struktura jar datoteke

jar datoteka bi trebala izgledati kao hijerarhijska struktura, unutar koje se nalaze java datoteke sa čitljivim izvornim kodom. Idite na Datoteka> Sačuvaj sve izvore da spakujete sve izvore u zip arhivu.

Slika 19: Čuvanje izvornog teksta dekompiliranog fajla

Nakon spremanja izvora, raspakirajte arhivu u poseban direktorij.

Slika 20: Raspakirana arhiva

Sada morate uvesti oba direktorija u prethodno kreirani projekat u IDE-u. U IntelliJ-u idite u fasciklu src i tamo kopirajte sadržaj raspakovane arhive (dva direktorijuma).

Slika 21: Oba foldera kopirana u src direktorij

Vraćajući se na Intellij, vidimo ažurirani projekat.

Slika 22: Izvorni kod se pojavio u projektu

Ako kliknemo na bilo koju stavku sa liste, vidjet ćemo originalni tekst. Kao što možete vidjeti na slici ispod (izvorni kod klase LoginActivity), izvorni kod je zamaskiran korištenjem ProGuarda.

Slika 23: Zamagljeni izvorni kod klase LoginActivity

Debugger veza

Sada kada se izvorni kod pojavio u projektu, možemo započeti postavljanje tačaka prekida za metode i varijable. Kada se dosegnu tačke prekida, aplikacija će se zaustaviti. Kao primjer, postavio sam tačku prekida na metodu (pravo u zamagljenom kodu) koja je odgovorna za obradu informacija unesenih u tekstualno polje.

Slika 24: Tačka prekida je postavljena na zamagljenoj metodi

Čim se pojavi tačka prekida, povežite program za otklanjanje grešaka sa procesom na uređaju tako što ćete kliknuti na ikonu sa ekranom u gornjem desnom uglu (na vašem IDE-u ikona se može razlikovati).

Slika 25: Povezivanje debugera na proces

Slika 26: Lista procesa za povezivanje debagera

Nakon odabira procesa, debugger će se povezati s uređajem.

Slika 27: Debugger je vezan za proces koji se izvodi na uređaju

U tekstualni okvir upisat ću broj 42 (ako se sjećate, postoji tačka prekida na odgovarajućoj metodi).

Slika 28: Unesite broj 42 u okvir za tekst

Nakon pritiska na dugme "Enter Code", izvršavanje aplikacije će biti prekinuto na tački prekida, budući da je debager "svjestan" koja metoda se poziva na uređaju. Prevedena Android aplikacija sadrži informacije za otklanjanje grešaka (kao što su imena varijabli) dostupne za bilo koji program za otklanjanje grešaka kompatibilan sa Java Debug Wire Protocol (JDWP). Ako je otklanjanje grešaka omogućeno u aplikaciji, program za otklanjanje grešaka kompatibilan sa JDWP (većina Java programa za otklanjanje grešaka spada u ovu kategoriju) može da se poveže sa virtuelnom mašinom Android aplikacije, a zatim čita i izvršava komande za otklanjanje grešaka.

Slika 29: Pokrenuta tačka prekida

Snimak ekrana ispod prikazuje broj koji smo prethodno uneli u okvir za tekst.

Slika 30: Lista varijabli trenutne instance klase

Zaključak

Ne samo da možemo čitati podatke u aplikaciji, već i umetati svoje. Ovo može biti korisno ako, na primjer, želimo prekinuti tok izvršavanja koda i zaobići neke dijelove algoritma. Uz pomoć debuggera možemo bolje razumjeti logiku aplikacije i analizirati ono što je običnom korisniku nedostupno. Na primjer, može biti od velike pomoći da vidite funkcije šifriranja koje se koriste i dinamičke ključeve. Osim toga, ponekad je korisno prilikom otklanjanja grešaka znati kako funkcije stupaju u interakciju sa sistemom datoteka ili bazom podataka kako bi se razumjelo koje informacije sprema aplikacija. Takve manipulacije su dostupne na bilo kojem Android uređaju bez privilegija superkorisnika.

Dobar dan. Često se dešava da svoj uređaj sa Android operativnim sistemom trebamo provjeriti pomoću računara. Bilo da se radi o općem testiranju ili rutinskoj dijagnostici, za provjeru bilo kakvih nedostataka. Da biste to učinili, morate omogućiti takozvani način rada "USB debugging". Koliko god zastrašujuće zvučalo, zapravo je vrlo jednostavno i dostupno ne samo guruu u gadžetima, već i snazi ​​najobičnijeg početnika. Što je USB otklanjanje grešaka za Android, kako omogućiti ovo USB otklanjanje grešaka preko PC-a na našem Androidu, možemo naučiti iz našeg članka.

Recimo odmah da je povezivanje sa našim ličnim računarom mnogo poželjnije od rada sa PC emulatorom.

Za svakog vatrogasca ubacujemo malu video instrukciju o tome kako postaviti "Debugging via USB", pa, u nastavku ćemo detaljnije govoriti o svim metodama i pravilima ovog postupka.

Šta treba uraditi i kojim redosledom

U većini slučajeva, način USB otklanjanja grešaka koji nam je potreban, od svih proizvođača, može se pronaći i podesiti preko menija “Postavke”. Ovo obično sadrži podmeni Razvoj ili Programeri. I iako nismo nikakvi programeri, još uvijek hrabro pronalazimo traženo "Otklanjanje grešaka putem USB-a" i, bez daljeg odlaganja, tu stavljamo dasku.

Mogli biste pomisliti da je ovo bio kraj svih naših iskušenja, ali nije bilo. Sasvim je moguće da vaš meni nema takvu opciju. Ovo su vremena. Ovo više nije za mene, već za najstvarnije programere. Zašto su to uradili? Nejasno. Možda ne može svako kopati po uređaju i tamo lomiti drva.

Najlakši način da omogućite USB otklanjanje grešaka

Ako ga nema na našem meniju, onda ćemo pokušati da idemo drugim putem. Nekoliko tipova USB otklanjanja grešaka na različitim Android OS. Ako imate Android 2.2 3.0, onda ćemo prvo pokušati ući u isti “Meni”, zatim u Postavke”, pa u “Aplikacije”, pa u “Razvoj”. Sasvim je moguće da će već postojati stavka "Otklanjanje grešaka putem USB-a".

Za sve vlasnike Androida 4.2 i novijih, izmišljen je sljedeći vrlo lukav put. Ponovo idemo na “Meni”, zatim na “Postavke”, na “O pametnom telefonu / O tabletu”. Ovdje nalazimo "Broj gradnje » i kreiraćemo neke šamanske akcije. Pritisnemo ga 8-10 puta i pri sljedećem ulasku u "Postavke" na nerazumljiv način se odjednom pojavljuje "Za programere" i "Otklanjanje grešaka putem USB-a". Ostaje samo ponovo potvrditi okvir.

Pretpostavit ćemo da smo uspjeli i da je ovo otklanjanje grešaka omogućeno. Kada se prvi put povežete sa našim računarom ili unesete bilo koju komandu, od vas će se tražiti da verujete računaru koji je trenutno povezan. Dakle, potpuno vjerujemo svom kompjuteru, zatim stavimo daw, kliknemo "U redu". Sve. Otklanjanje grešaka je omogućeno. Ako iznenada računar ne želi da otkrije naš uređaj, pokušajte sledeće. Provjerite je li vaš pametni telefon/tablet iznenada blokiran. Otključajte ga, ponovo provjerite otklanjanje grešaka.

Ako ponovo ne radi, pokušajte ažurirati/zamijeniti/reinstalirati USB drajvere na vašem računaru. Napomena: Preporučljivo je koristiti samo USB 2.0 port, a ne port kao što je USB 3.0. Ipak, usuđujem se da budem siguran da vam je sve ispalo i da je uključen režim podešavanja za YUSB.

Posjećujte nas češće!

način rada " USB otklanjanje grešaka»Uvijek se može pronaći u meniju postavki pametnog telefona, bez obzira na marku uređaja ili verziju operativnog sistema. Međutim, treba napomenuti da se konačni put kojim možete doći do ovog načina rada može razlikovati. I ako odlučiš omogući usb otklanjanje grešaka, onda vjerojatno pokušavate ili program to zahtijeva, na primjer, za oporavak izbrisanih datoteka na androidu.

Prva opcija (relevantna za većinu verzija Android OS-a).

Prvo morate ući u meni postavki. Nakon toga, u donjim pasusima pronađite "Razvoj" i označite okvir "Debugging via USB".

Opcija dva (relevantna za većinu tableta)

Ovdje je algoritam radnji identičan prvoj opciji, s izuzetkom stavke "Razvoj". U verziji OS Android ispod 2.2, ova stavka se zove "Za programere".

Nakon što napišemo prvu verziju koda našeg programa, mi ćemo naravno htjeti da ga pokrenemo i testiramo kako bismo otkrili potencijalne probleme (ili samo da bismo se pokazali). Postoje dva načina da to uradite: pokrenite aplikaciju na stvarnom uređaju koji je povezan sa računarom pomoću USB kabla; pozovite emulator uključen u SDK i testirajte aplikaciju na njemu.

U oba slučaja, moramo izvršiti neke radnje da vidimo naš program u akciji.

Povezivanje uređaja

Prije povezivanja uređaja radi testiranja, provjerite da li ga operativni sistem prepoznaje. Na Windows-u, ovo zahtijeva instaliranje odgovarajućeg drajvera, koji je dio SDK instalacije koju smo ranije instalirali. Samo priključite svoj uređaj i slijedite upute za instalaciju standardnog Windows drajvera tako što ćete pokazati na drajver / folder u vašem SDK instalacionom direktoriju. Drajveri za neke uređaje morat ćete preuzeti s web stranice njihovih proizvođača. Na Linux-u i Mac OS X-u obično nema potrebe da zasebno instalirate drajvere – oni dolaze s operativnim sistemom. Ovisno o vašoj verziji Linuxa, možda ćete morati učiniti nekoliko dodatnih koraka (obično kreirajući novu datoteku udev pravila). Skup radnji može se razlikovati za različite uređaje - pretraživanje weba će vam pomoći.

Kreirajte virtuelni Android uređaj

SDK dolazi sa emulatorom koji pokreće takozvane Android virtuelne uređaje (AVD). Ovaj virtuelni uređaj se sastoji od slike određene verzije Android operativnog sistema, ljuske i skupa atributa uključujući rezoluciju ekrana, veličinu memorijske kartice, itd. Da biste kreirali novi AVD, morate pokrenuti SDK i AVD manager . To možete učiniti ili kako je opisano u uputama za instalaciju SDK-a ili direktno u Eclipse-u klikom na dugme SDK manager na traci sa alatkama.

1. Izaberite Virtuelni uređaji sa liste sa leve strane. Kao rezultat, vidjet ćete listu dostupnih virtuelnih uređaja. Ako ranije niste koristili SDK manager, ova lista će biti prazna; hajde da promenimo ovo stanje.

2. Kliknite na dugme Novo sa desne strane da kreirate novi AVD. Pojavit će se dijalog (slika 2.7).

Rice. 2.7. Kreirajte AVD dijalog u SDK menadžeru

3. Svaki virtuelni uređaj ima ime (polje Ime) po kojem ćete ga kasnije pozivati. Target definira verziju Androida koju bi AVD trebao koristiti. Osim toga, možete definirati veličinu memorijske kartice za AVD kao i rezoluciju ekrana. Za naš jednostavan hel1o world projekat, možemo ciljati Android 1.5, ostavljajući ostale parametre nepromijenjenim. U stvarnom okruženju za testiranje, obično morate kreirati više virtuelnih uređaja da biste testirali aplikaciju za različite verzije OS-a i veličine ekrana.

BILJEŠKA

Ako nemate prave uređaje na Androidu različitih verzija i sa različitim ekranima, pogodnije je koristiti emulator za dodatno testiranje kompatibilnosti aplikacija.

Pokretanje aplikacije

Sada nakon podešavanja vaših uređaja i AVD-a, konačno možete pokrenuti svoju aplikaciju. U Eclipse-u, to je jednostavno - kliknite desnim tasterom miša na projekat hel1oworl d u prikazu Package Explorer i izaberite Pokreni kao Android aplikaciju (ili klikom na dugme Pokreni na traci sa alatkama). Kao rezultat toga, okruženje će izvršiti sljedeće radnje u pozadini.

1. Prevodi projekat u ARC datoteku (ako je bilo promjena u datotekama od posljednje kompilacije).

2. Kreiraće novu konfiguraciju pokretanja za Android projekat ako već ne postoji (uskoro ćemo razgovarati o konfiguraciji pokretanja).

3. Instalirajte i pokrenite aplikaciju tako što ćete pokrenuti novi ili koristeći već pokrenuti emulator odgovarajuće verzije Androida, ili ga implementirati i pokrenuti na povezanom uređaju (koji također ima verziju OS-a koja nije niža od one navedene u parametru Min SDK Version prilikom kreiranja projekta).

Ako ste upravo kreirali AVD za Android 1.5 (kao što je gore opisano), dodatak Eclipse ADT će pokrenuti novu instancu emulatora, implementirati hello world ARC na njega i pokrenuti aplikaciju. Na izlazu ćete vidjeti nešto slično kao na sl. 2.8.

Emulator radi slično kao pravi uređaj i možete komunicirati s njim pomoću miša kao da koristite prst. Međutim, postoje neke razlike u odnosu na rad sa pravim uređajem.

Emulator ne podržava multitouch. Pomjerite pokazivač miša i pretvarajte se da je vaš prst. Neke aplikacije nedostaju u emulatoru (na primjer, Android Market).

Beskorisno je tresti monitor da biste promijenili orijentaciju ekrana. Umesto toga, koristite taster 7 na numeričkoj tastaturi da rotirate ekran. Da ne biste umjesto toga birali 7, prvo morate pritisnuti Num Lock.

Rice. 2.8. Sjajna aplikacija hello world u akciji.

Emulator je veoma, veoma spor. Ne sudite o performansama vaše aplikacije prema brzini kojom radi na emulatoru.

U vrijeme pisanja i emulator podržava samo OpenGL ES 1.0 sa nekoliko ekstenzija. Za naše potrebe to je dovoljno (osim što implementacija grafičke biblioteke na emulatoru pati od grešaka i ponekad možete dobiti drugačije rezultate nego na stvarnom uređaju). Za sada, samo zapamtite da ne testirate aplikacije koristeći OpenGL ES na emulatoru.

Isprobajte različite radnje s emulatorom da se naviknete na njega.

BILJEŠKA

Za pokretanje nove instance potrebno je dosta vremena (do nekoliko minuta, ovisno o karakteristikama radne stanice). Da uštedite vrijeme, ostavite emulator da radi tijekom cijele razvojne sesije bez ponovnog pokretanja svaki put.

Ponekad prilikom pokretanja Android aplikacije, automatski odabir emulatora/uređaja koji vrši ADT dodatak postaje prepreka. Na primjer, povezali smo nekoliko uređaja ili emulatora i želimo testirati projekat na jednom od njih. Da biste to postigli, možete isključiti automatski odabir emulatora/uređaja u konfiguraciji pokretanja vašeg Android projekta. Usput, šta je konfiguracija pokretanja?

Konfiguracija pokretanja pruža način da Eclipse-u kaže kako tačno treba da pokrene vašu aplikaciju primanjem odgovarajuće komande. Ovo se obično prevodi u mogućnost definiranja argumenata komandne linije koji će se proslijediti programu, argumenata virtuelne mašine (u slučaju Java SE desktop aplikacija) i tako dalje. Eclipse i dodaci treće strane nude različite konfiguracije pokretanja za određene tipove projekata . ADT nije izuzetak - on takođe dodaje sopstvenu konfiguraciju pokretanja setu. Prilikom prvog pokretanja naše aplikacije, Eclipse i ADT su kreirali novu Android Application Run konfiguraciju sa zadanim opcijama.

Da biste pristupili konfiguraciji pokretanja vašeg projekta, slijedite ove korake.

1. Desni klik na projekat u pregledu Package Explorer i izaberite Pokreni kao - Pokreni konfiguracije.

2. Izaberite projekat hello world sa liste sa leve strane.

3. Na desnoj strani prozora možete promijeniti naziv konfiguracije za pokretanje, kao i podesiti ostale postavke na karticama Android, Target i Commons.

4. Da prebacite primenu sa automatskog na ručnu, idite na karticu Cilj i izaberite Ručno.

Sada, kada pokrenete aplikaciju, od vas će se tražiti da odaberete odgovarajući emulator ili uređaj za implementaciju. Ovaj dijalog je prikazan na sl. 2.9. Radi jasnoće, dodao sam nekoliko virtuelnih uređaja sa različitim verzijama ciljnog OS-a, a takođe sam povezao dva stvarna uređaja.

Rice. 2.9. Odabir emulatora/uređaja za pokretanje aplikacije

Dijalog prikazuje sve pokrenute emulatore i trenutno povezane uređaje, kao i druge AVD-ove koji trenutno nisu pokrenuti.

Otklonite greške u aplikaciji

Ponekad se aplikacija ponaša neočekivano ili prestane raditi. Da biste utvrdili uzrok problema, morate biti u mogućnosti da otklonite greške u programu. Eclipse i ADT nude nevjerovatno moćne mogućnosti za Android aplikacije. Možemo postaviti tačke prekida u kodu, dobiti vrijednosti varijabli, trenutno stanje steka i još mnogo toga.

Prije nego što počnete koristiti otklanjanje grešaka, morate urediti datoteku AndroidManifest.xml. Ova tačka je neka vrsta problema sa kokoškom i jajima jer ranije nismo pregledali datoteke manifesta. U ovoj fazi, samo trebamo znati da manifest datoteka definira neke od atributa naše aplikacije. Jedna od njih je mogućnost otklanjanja grešaka u aplikaciji. Ovaj parametar je u obliku atributa XML oznake ... Da omogućimo mogućnosti otklanjanja grešaka, jednostavno dodamo sljedeći atribut u oznaku u datoteci manifesta: androi d: debuggable = true

Tokom razvoja aplikacije, ovaj atribut možete ostaviti u datoteci manifesta. Međutim, ne zaboravite da ga uklonite prije nego što pošaljete paket na Android Market.

Sada kada ste omogućili otklanjanje grešaka za svoju aplikaciju, možete ga implementirati na emulatoru ili uređaju. Ovo se obično prevodi u postavljanje tačaka prekida za analizu stanja programa u određenim fazama. Da postavite tačku prekida, otvorite datoteku koda u Eclipse-u i dvaput kliknite na sivu oblast ispred linije koda koju želite. Da bismo demonstrirali ovu mogućnost, uradimo to na liniji 23 klase He1oWorl dActi vi ty. Ovo će uzrokovati da debugger pauzira tok programa svaki put kada se pritisne dugme na ekranu. Tačka prekida je označena u uređivaču koda malim krugom ispred linije na koju ste je postavili (slika 2.10). Da biste uklonili tačku prekida, dvaput je kliknite ponovo u uređivaču koda.

Rice. 2.10. Postavljanje tačke prekida

Pokretanje debug-a je vrlo slično gore opisanom procesu pokretanja aplikacije. Kliknite desnim tasterom miša na projekat u pregledu Package Explorer i izaberite Debug As - Android Application. Ovo će kreirati novu konfiguraciju za otklanjanje grešaka za vaš projekat (baš kao što ste učinili kada ste jednostavno pokrenuli program). Možete promijeniti zadane postavke za datu konfiguraciju odabirom Debug As - Debug Configurations iz kontekstnog menija.

BILJEŠKA

Umjesto korištenja priručnog izbornika projekta u pregledu Package Explorer, možete koristiti meni Pokreni za pokretanje i otklanjanje grešaka u vašoj aplikaciji i pristup postavkama.

Ako vam je ovo prvi put da započinjete sesiju otklanjanja grešaka, Eclipse će vas pitati da li želite da se prebacite na perspektivu za otklanjanje grešaka, na šta možete pristati bez oklijevanja. Razmotrite ovu perspektivu. Na sl. 2.11 pokazuje njegov izgled nakon pokretanja procesa otklanjanja grešaka naše aplikacije hel1o world.

Rice. 2.11. Debug Perspective

Ako se sjetite našeg kratkog obilaska Eclipse-a, znat ćete da u njemu postoji nekoliko perspektiva koje se sastoje od skupa pogleda za određene zadatke. Debug perspektiva izgleda veoma različito od Run perspektive.

Prvi od novih pogleda na koji treba obratiti pažnju je Debug u gornjem lijevom uglu. Prikazuje sve trenutno pokrenute aplikacije i stogove svih njihovih niti ako rade u načinu za otklanjanje grešaka.

Ispod prikaza za otklanjanje grešaka nalazi se prikaz za uređivanje koda koji smo već videli kada smo istraživali Java perspektivu.

Prikaz konzole prikazuje poruke iz ADT dodatka koje nas obavještavaju o tome šta se dešava.

LogCat pogled će biti jedan od naših najboljih prijatelja pri razvoju aplikacija. Prikazuje dnevnik poruka koje dolaze od sistemskih komponenti, drugih aplikacija i našeg programa. Također može vidjeti praćenje steka ako se aplikacija sruši i naše vlastite poruke u stvarnom vremenu. LogCat će biti detaljnije razmotren u sljedećem odjeljku.

Prikaz Outline nije mnogo koristan u ovoj perspektivi. Najvjerovatnije ćete učiti o varijablama i tačkama prekida i neće vam trebati trenutna pozicija u programu. Obično zatvaram ovaj prikaz iz perspektive Debug da bih ostavio više prostora za druge.

Pogled varijable je posebno koristan za potrebe otklanjanja grešaka. Kada program za otklanjanje grešaka dostigne tačku prekida, imamo priliku da ispitamo i izmenimo varijable u trenutnom kontekstu programa.

Konačno, pogled Breakpoints prikazuje listu tačaka prekida koje smo postavili.

Ako ste radoznali, vjerovatno ste već pritisnuli dugme u pokrenutoj aplikaciji da vidite kako radi debager. Zaustavit će se na liniji 23 prema postavljenoj tački prekida. Također možete primijetiti da su se u prikazu varijable pojavile varijable trenutnog bloka programa, koji se sastoji od same aktivnosti (ovo) i parametra metode (v). Kako širite listu varijabli, možete ih detaljnije istražiti.

Prikaz Debug prikazuje praćenje steka za trenutni metod. Imajte na umu da možete imati više pokrenutih niti, od kojih svaku možete pauzirati u bilo kojem trenutku u prikazu za otklanjanje grešaka. Linija na kojoj je postavljena tačka prekida je istaknuta kako bi se označila pozicija u programskom kodu.

Možete reći debageru da izvrši trenutni izraz (pritiskom na F6), da uđe u metode koje poziva trenutna metoda (pritiskom na F5) ili da nastavi normalno izvršavanje programa (pritiskom na F8). Iste ciljeve možete postići i pomoću menija Pokreni. Imajte na umu da zapravo postoji više opcija za otklanjanje grešaka nego što sam vam upravo rekao. Kao i uvijek, pozivam vas da eksperimentišete sa onim što vam je potrebno.

BILJEŠKA

Curiosity je temelj uspješnog razvoja Android igara. Morat ćete stvarno upoznati svoje razvojno okruženje da biste iz njega izvukli maksimum. ali ne mogu opisati sve detalje Eclipsea, pa vas ohrabrujem da ponovo eksperimentišete.

LogCat i DDMS

ADT dodatak instalira mnoge nove poglede i perspektive za upotrebu u Eclipseu. Jedan od najkorisnijih koncepata (spomenut usput u prethodnom odeljku) se zove LogCat.

LogCat je sistem za evidentiranje događaja u Androidu koji omogućava komponentama sistema i aplikacijama da prikažu informacije na različitim nivoima. Svaki unos dnevnika sastoji se od datuma, vremena, nivoa dnevnika, ID procesa izvora dnevnika, oznake (definisane od strane same aplikacije) i same poruke.

LogCat prikaz prikuplja i šalje ove informacije iz povezanog emulatora ili stvarnog uređaja. Na sl. 2.12 prikazuje primjer izlaza u LogCat prikazu.

Rice. 2.12. LogCat pogled

Obratite pažnju na dugmad u gornjem desnom uglu LogCata.

Prvih pet od njih vam omogućavaju da odaberete nivoe evidentiranja koje želite da vidite.

Zeleno dugme plus vam omogućava da definišete filter na osnovu oznake, ID-a procesa, nivoa evidencije. Mnogo će vam pomoći ako želite samo da vidite dnevnik vaše aplikacije (koja će vjerovatno koristiti posebnu oznaku).

Ostatak dugmadi vam omogućava da uredite i promenite filter, kao i da obrišete izlazni prozor.

Ako je više uređaja / emulatora povezano istovremeno, LogCat će emitovati informacije samo sa jednog od njih. Za više informacija, možete iskoristiti prednosti DDMS perspektive.

DDMS (Dalvik Debugging Monitor Server) pruža raznovrsnije informacije o Dalvik procesima i virtuelnim mašinama koje rade na svim povezanim uređajima. Možete se prebaciti na DDMS perspektivu u bilo kojem trenutku koristeći stavku menija Prozor - Otvori perspektivu - Ostalo - DDMS. Na sl. Slika 2.13 pokazuje kako obično izgleda DDMS perspektiva.

Rice. 2.13. DDMS u akciji

Kao i kod drugih perspektiva, na raspolaganju imamo nekoliko posebnih stavova koji za nas rade koristan posao. U ovom slučaju želimo da prikupimo informacije o svim procesima, njihovim virtuelnim mašinama, nitima, trenutnom stanju memorije, podacima iz LogCata za određeni uređaj, itd. Hajde da razmotrimo ove poglede.

Uređaji – Prikazuje sve povezane uređaje i emulatore i procese koji se na njima pokreću. Koristeći dugmad na traci sa alatkama, možete izvršiti različite radnje: otkloniti greške u odabranom procesu, snimiti stanje memorije i podataka iz niti i napraviti snimke ekrana.

LogCat - Slično onom opisanom u prethodnom odeljku, sa jednom razlikom: on emituje informacije sa uređaja izabranog u prikazu uređaja.

Kontrola emulatora - Omogućava vam da promijenite ponašanje pokrenute instance emulatora. Možete ga, na primjer, natjerati da generiše uzorke GPS koordinata za testiranje.

Niti – Prikazuje informacije o nitima koje koristi proces odabran u prikazu Uređaji. Informacije će se prikazati samo ako ste omogućili praćenje tokova (to možete učiniti klikom na peto dugme s lijeve strane u prikazu Uređaji).

Heap (nije prikazan na slici 2.13) - pruža informacije o statusu memorije uređaja. Kao i kod podataka niti, morate eksplicitno omogućiti praćenje memorije u prikazu Uređaji klikom na drugo dugme s lijeve strane.

Alocation Tracker - Prikazuje nedavno korištene klase. Mnogo pomaže kada se nosite sa curenjem memorije.

File Explorer - Omogućuje vam izmjenu datoteka na povezanom Android uređaju ili instanci emulatora. Možete prevući i ispustiti datoteke u ovaj prikaz na isti način kao što to radite sa operativnim sistemom.

DDMS je zapravo samostalna aplikacija integrirana u Eclipse pomoću ADT dodatka. Možete ga pokrenuti odvojeno iz direktorija $ ANDR0ID H0M E / alati (% ANDROID HOME% / alati kada koristite Windows). Ne povezuje se direktno na uređaje, koristeći Android Debug Bridge (ADB), još jedan uslužni program uključen u SDK. Hajde da ga pogledamo kako bismo upotpunili naše znanje o Android razvojnom okruženju.

Koristeći ADB

ADB vam omogućava da upravljate povezanim uređajima i instancama emulatora. Ima tri različite komponente.

Klijentska aplikacija pokrenuta na mašini za razvojne programere pomoću naredbe adb (ova komanda će raditi ako ste ispravno konfigurisali varijable okruženja). Kada govorimo o ADB-u, mislimo na ovaj uslužni program komandne linije.

Server koji takođe radi na računaru programera. Instalira se kao pozadinski servis i odgovoran je za vezu između ADB programa i bilo kojeg povezanog uređaja ili instance emulatora.

ADB daemon, koji je također pozadinski proces i radi na svakom telefonu ili emulatoru. ADB server koristi ovaj demon za povezivanje.

Obično koristimo ADB preko DDMS-a, zanemarujući postojanje zasebnog uslužnog programa komandne linije. Ali ponekad može biti korisno pokrenuti ga zasebno, pa hajde da na brzinu pogledamo neke od njegovih karakteristika.

BILJEŠKA

Za potpunu referencu dostupnih komandi, pogledajte ADB dokumentaciju na web lokaciji Android Developers (http://developer.android.com).

Veoma koristan zadatak koji se izvodi sa ADB-om je da dobijete listu svih uređaja i emulatora povezanih na ADB server (a samim tim i na računar). Da biste to učinili, pokrenite sljedeću naredbu konzole (napomena: simbol nije dio naredbe):

Kao rezultat, na ekranu će se prikazati lista svih povezanih uređaja i emulatora s odgovarajućim serijskim brojevima:

Serijski broj uređaja ili emulatora se koristi za izvršavanje narednih naredbi. Na primjer, sljedeća naredba će instalirati ARC datoteku myapp. pk sa stroja programera na uređaj sa serijskim brojem NT019R803783:

Argument -s se može koristiti sa bilo kojom ADB naredbom koja izvodi bilo koju radnju na određenom uređaju.

Postoje i komande za kopiranje datoteka između računara i uređaja (emulator). Rezultat sljedeće naredbe je kopiranje lokalne datoteke myfi1e. txt na memorijsku karticu uređaja sa serijskim brojem NT019R803783:

Za pravljenje rezervne kopije fi1e. txt sa memorijske kartice, koristite sljedeći skup znakova:

Ako je samo jedan uređaj ili emulator trenutno povezan na ADB server, možete izostaviti serijski broj - adb će ga automatski otkriti.

Naravno, mogućnosti ADB-a nisu ograničene na karakteristike koje smo opisali. Mnogi od njih se implementiraju preko DDMS-a, a u većini slučajeva nećemo koristiti komandnu liniju. Međutim, idealan je za male zadatke.

Rezimirajući

Android razvojno okruženje ponekad može biti strašno. Srećom, potreban vam je samo podskup funkcionalnosti da biste započeli.

Najvažnija stvar koju treba razumjeti nakon učenja je kako sve to funkcionira zajedno. JDK i Android SDK služe kao osnova za sav razvoj Androida. Nude alate za kompajliranje, implementaciju i pokretanje aplikacija na instancama i uređajima emulatora. Da bismo ubrzali proces razvoja, koristimo Eclipse zajedno sa ADT dodatkom, što nas štedi muke rada sa JDK i SDK na komandnoj liniji. Sam Eclipse je izgrađen na nekoliko osnovnih koncepata: radni prostori za upravljanje projektima; Pogledi koji nude posebne funkcionalnosti (na primjer, uređivanje programskog koda ili LogCat izlaz); perspektive koje kombinuju poglede za obavljanje specifičnih zadataka (na primjer, otklanjanje grešaka); konfiguracije za pokretanje i otklanjanje grešaka koje vam omogućavaju da definišete opcije za pokretanje ili otklanjanje grešaka u vašoj aplikaciji.

Preduslov za ovladavanje svim tim bogatstvom je praksa, ma koliko dosadno zvučalo. U toku proučavanja ovoga i mi ćemo implementirati projekte koji će vas upoznati sa razvojnim okruženjem za Android. Međutim, nemojte stati na tome – samo od vas zavisi hoćete li poduzeti sljedeće korake.

Sada kada imate sve ove informacije u svom umu, možete krenuti naprijed prema onome čime se bavite: razvoju igara.

Top srodni članci