Otklanjanje pogrešaka u Android studiju na stvarnom uređaju. Otklanjanje pogrešaka Android aplikacije na pametnom telefonu

Cilj ovog poglavlja je napisati minimalnu aplikaciju za Android. Ali nikada nećemo sa sigurnošću znati jesmo li uspjeli napisati nešto što radi, a da to nismo pokušali pokrenuti na stvarnom uređaju. To je ono što ćemo učiniti u ovom članku.

Mogućnost testiranja na pametnom telefonu pruža ADB (Android Debug Bridge). U ovom ćemo članku postaviti i pokrenuti našu aplikaciju na pravom pametnom telefonu.

Što je ADB

Android Debug Bridge (ADB) univerzalni je alat naredbenog retka koji olakšava interakciju između razvojnog okruženja, u našem slučaju Android Studija, i AVD emulatora ili fizičkih Android uređaja kako bi mogli pokretati i otklanjati pogreške aplikacija.

ADB se sastoji od klijenta i poslužitelja, koji radi kao pozadinski proces, na računalu razvojnog programera i iz demona koji se izvodi kao pozadinski proces na svakoj instanci emulatora ili stvarnog uređaja.

Postavljanje Android uređaja za rad s ADB-om

Kako biste koristili ADB s uređajem spojenim putem USB-a, morate omogućiti USB debugging u postavkama sustava vašeg telefona ili tableta u odjeljku "Mogućnosti za razvojne programere" (naziv se može razlikovati). Na nekim je uređajima ovaj odjeljak prema zadanim postavkama skriven. Pogledajmo korake u slučaju kada dio potrebnih postavki nije dostupan.

  1. Idite na postavke, odjeljak "O uređaju"
  2. Pronađite "Broj izrade" i kliknite na njega 7 puta. Trebao bi se pojaviti prozor koji vas obavještava da je način rada za razvojne programere aktiviran.
  3. Odjeljak Developer Options sada bi se trebao pojaviti u postavkama.
  4. Omogućite opciju "USB Debugging".

Sada, kada povežete uređaj s računalom, ovisno o modelu, možda ćete doživjeti nova opcija veze.

Postavljanje ADB-a u sustavu Windows

Prilikom postavljanja sustava Windows prvo provjerite imate li instaliran Google USB Driver. Idite na SDK Manager u odjeljku Dodaci i pronađite Google USB Driver, instalirajte ga ako je potrebno.


Sada biste trebali ažurirati upravljački program. Povežite uređaj s računalom, idite na Upravljačku ploču -> Hardver i zvuk -> Upravitelj uređaja i pronađite svoj uređaj. Desni klik na vašem uređaju za otvaranje kontekstni izbornik i odaberite "Ažuriraj upravljačke programe...". Driver se može pronaći u sdk direktoriju u podmapi \(sdk direktorij)\extras\google\usb_driver.

Kako provjeriti jesu li ADB postavke ispravne?

Za provjeru funkcionalnosti ADB-a povežite uređaj s računalom, pokrenite naredbeni redak u mapi \(sdk direktorij)\platform-tools i unesite naredbu u njega:

adb uređaji

Trebao bi se pojaviti ovakav popis:

Popis priključenih uređaja 5cdb2ced uređaj

Pokretanje aplikacije na stvarnom uređaju

Sve je isto kao kada se pokreće na emulatoru. Otvorite naš projekt u Android Studiju, kliknite na zeleni trokut, ali u prozoru za odabir uređaja koji se pojavi odaberite svoj uređaj.


Ako piše da je uređaj izvan mreže, priključite USB i dopustite USB debugging na računalu:

Kao rezultat toga, naša aplikacija će se pojaviti na ekranu vašeg telefona ili tableta.

Zaključak

Ovo poglavlje završava. Bili smo uspješni: uspjeli smo konfigurirati naš sustav za razvoj Android aplikacija i čak pokrenuti jednu od njih na stvarnom uređaju.

Ako vam nešto aktivno ne ide ili ste zbunjeni, napišite u komentarima i ja ću vam pomoći da shvatite svoj problem.

Dekompilacija i otklanjanje pogrešaka Android aplikacija

Aleksandar Antipov

Ovaj članak će vam pokazati kako priložiti program za ispravljanje pogrešaka Android aplikaciji i proći kroz metode koje se pozivaju pomoću informacija dobivenih nakon dekompilacije aplikacije.


Ovaj članak će vam pokazati kako priložiti program za ispravljanje pogrešaka Android aplikaciji i proći kroz metode koje se pozivaju pomoću informacija dobivenih nakon dekompilacije aplikacije. Dobra vijest je da otklanjanje pogrešaka ne zahtijeva privilegije superkorisnika. Opisane tehnike mogu biti vrlo korisne tijekom pentestova. mobilne aplikacije, jer se možemo "infiltrirati" u kod dok program radi, dobiti i zabilježiti informacije kojima inače ne bismo imali pristup. Na primjer, možete presresti promet prije enkripcije i dobiti ključeve, lozinke i sve druge vrijedne informacije u hodu. Članak će biti koristan pentesterima i programerima mobilnih aplikacija koji žele steći dublje znanje o mogućim napadima na Android platformu.

Zahtjevi testnog okruženja:

  • Operativni sustav: 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

U ovom članku koristit će se sljedeća konfiguracija: Windows 8, Android Studio i IntelliJ IDEA. Uređaj: Nexus 4 sa Android verzije 4.4.4. Preporučam dodavanje svih uslužnih programa u varijablu okruženja PATH kako bi pristup tim alatima bio lakši i brži.

Paket Android aplikacija (APK) korišten u ovom članku može se preuzeti ovdje: com.netspi.egruber.test.apk .

Postavljanje uređaja

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

Aktiviranje odjeljka Opcije za razvojne programere

Za početak, USB debugging mora biti omogućen na vašem Android uređaju (USB debugging opcija), što će vam omogućiti da “komunicirate” s uređajem pomoću alata iz Android SDK-a. Međutim, prije toga morate aktivirati odjeljak Developer options. Na svom uređaju idite na odjeljak Settings > About Phone i nekoliko puta kliknite na stavku Build Number, nakon čega bi se trebala pojaviti poruka da je odjeljak Developer options aktiviran.

Slika 1: Kako biste aktivirali odjeljak Developer options, morate nekoliko puta kliknuti na Build number

Omogući USB otklanjanje pogrešaka

Da biste omogućili otklanjanje pogrešaka putem USB priključka, idite na Postavke > Opcije za razvojne programere i potvrdite okvir pokraj USB otklanjanje pogrešaka.

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

Povezivanje uređaja i pokretanje ADB-a

Nakon povezivanja uređaja s računalom putem USB priključka, trebala bi se pojaviti poruka "USB otklanjanje pogrešaka povezano na uređaju". Također biste trebali provjeriti možete li se povezati sa svojim uređajem pomoću aplikacije Android Debug Bridge (ADB) uključene u Android SDK (Android SDK Platform-tools). U naredbeni redak unesite sljedeću naredbu:

Uređaj bi se trebao pojaviti na popisu.

Slika 3: Popis povezanih uređaja

Ako se uređaj ne pojavi na popisu, najvjerojatnije je razlog netočan instalirani upravljački programi(na Windowsima). Ovisno o uređaju, upravljački program se može pronaći u Android SDK-u ili na web-mjestu proizvođača.

Provjera aplikacije za otklanjanje pogrešaka

Prije otklanjanja pogrešaka u Android aplikacijama prvo morate provjeriti je li to moguće. Provjeru je moguće izvršiti na više načina.

Prvi način je trčanje Monitor Android uređaja, uključen u Android SDK (u mapi alata). U Windows datoteka zvan monitor.bat. Kada otvorite Android Device Monitor, uređaj će se pojaviti u odjeljku Uređaji.

Slika 4: Aplikacija Android Device Monitor

Ako se bilo koja aplikacija na uređaju može otkloniti, ta će se aplikacija također pojaviti na popisu. Napravio sam testni program, ali popis je prazan jer se program ne može otkloniti.

Drugi način da provjerite može li se u aplikaciji otkloniti pogreška jest ispitivanje datoteke AndroidManifest.xml iz paketa aplikacije (APK, paket aplikacija za Android). APK je zip arhiva koja sadrži sve informacije potrebne za pokretanje aplikacije na vašem Android uređaju.

Kad god se aplikacija učita iz Google Play Store, također se preuzima paket aplikacija. Sve preuzete APK datoteke obično su pohranjene na uređaju u mapi /data/app. Ako nemate prava superkorisnika, nećete moći ispisati datoteke iz direktorija /data/app. Iako, ako znate naziv APK datoteke, možete je kopirati pomoću uslužnog programa adb. Da biste saznali naziv APK datoteke, unesite sljedeću naredbu:

pojavit će se naredbeni redak uređaja. Zatim unesite sljedeću naredbu:

pm popis paketa -f

Prikazuje se popis svih paketa na uređaju.

Slika 5: Popis paketa na uređaju

Gledajući popis, nalazimo testnu aplikaciju.

Slika 6: Kreirani testni aplikacijski paket (označeno bijelom bojom)

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

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

Slika 7: Kopiranje APK datoteke s uređaja na sustav

Sada morate otvoriti datoteku paketa i pregledati sadržaj AndroidManifest.xml. Nažalost, ne možemo jednostavno izdvojiti arhivu jer je APK datoteka kodirana u binarnom formatu. Uslužni program koji se najčešće koristi za dekodiranje je apktool iako koristim APK Studio, jer je ova aplikacija prijateljska GUI. U nastavku članka govorit ćemo o APK Studiju.

U APK Studiju kliknite na malu zelenu ikonu, imenujte projekt i odredite put do njega APK datoteka. Zatim navedite let za spremanje projekta.

Slika 8: Izrada novog projekta u APK Studiju

Nakon otvaranja APK-a odaberite datoteku AndroidManifest.xml i pogledajte postavke oznake aplikacije. Ako zastavica android:debuggable nedostaje (ili postoji, ali je postavljena na false), tada se aplikacija ne može otkloniti.

Slika 9: Sadržaj datoteke AndroidManifest.xml

Izmjena datoteke AndroidManifest.xml

Pomoću uslužnog programa apktool ili APK Studio možemo modificirati datoteke i spakirati sadržaj natrag u paket. Sada ćemo izmijeniti datoteku AndroidManifest.xml tako da se u aplikaciji mogu otkloniti pogreške. Dodajte redak android:debuggable="true" unutar oznake aplikacije.

Slika 10: Promjena sadržaja oznake aplikacije

Nakon dodavanja zastavice kliknite na ikonu "čekić" i ponovno sastavite paket. Ponovno izgrađeni paket nalazit će se u direktoriju build/apk.

Slika 11: Ponovna izgradnja paketa uspješno dovršena

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

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

adb pm deinstalirati

Zatim instalirajte novi paket:

adb instalacija [.apk datoteka]

Također možete ukloniti i instalirati paket jednom naredbom:

adb install -r [.apk datoteka]

Slika 12: Instalacija obnovljenog paketa

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

Slika 13: Ponovno izgrađena aplikacija sada može otkloniti pogreške

Postavljanje razvojnog okruženja (IDE)

Sada možete priložiti program za ispravljanje pogrešaka ponovno izgrađenoj aplikaciji, ali prvo trebate izraditi projekt u razvojnom okruženju (članak koristi IntelliJ IDEA). Kreirajmo novi projekt. U polje Naziv aplikacije unesite prilagođeni naziv. U polju Naziv paketa navedite naziv koji točno odgovara hijerarhiji mape ponovno izgrađenog paketa.

Slika 14: Stvaranje novog projekta u IntelliJ IDEA

Tipično će naziv APK datoteke odgovarati strukturi mape, no ako niste sigurni, provjerite hijerarhiju direktorija u APK Studiju do mape u kojoj se nalaze datoteke aplikacije. U mom slučaju, ime i struktura mape potpuno su isti (com.netspi.egruber.test).

Slika 15: Hijerarhija direktorija testne aplikacije

Poništite opciju "Create Hello World Activity" i dovršite stvaranje projekta (sve ostale opcije ostaju zadane). Novi bi projekt trebao izgledati otprilike ovako:

Slika 16: Hijerarhija mapa i datoteka novog projekta

Nakon izrade projekta trebate dodati izvor iz APK datoteke tako da program za ispravljanje pogrešaka "zna" nazive simbola, metoda, varijabli itd. Dobra vijest je da se Android aplikacije mogu dekompilirati gotovo bez gubitka kvalitete (izvorni kod će biti isti kao i original) . Nakon dekompilacije, izvorni kod se uvozi u razvojno okruženje (IDE).

Dohvaćanje izvora iz aplikacijskog paketa

Prvo morate pretvoriti APK u jar datoteku. Zatim ćemo pomoću java dekompilera dobiti izvorni kod aplikacije. Izvršit ćemo konverziju u jar pomoću uslužnog programa 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 datoteka]

Slika 17: Pretvaranje APK-a u jar

Zatim otvorite ili povucite rezultirajuću datoteku u JD-GUI (ovo je Java decompiler).

Slika 18: Struktura Jar datoteke

Datoteka jar trebala bi se pojaviti kao hijerarhijska struktura koja sadrži java datoteke s čitljivim izvornim kodom. Idite na Datoteka > Spremi sve izvore da spakirate sve izvore u zip arhivu.

Slika 19: Spremanje izvornih tekstova dekompilirane datoteke

Nakon spremanja izvornih tekstova, raspakirajte arhivu u poseban direktorij.

Slika 20: Neraspakirana arhiva

Sada trebate uvesti oba direktorija u prethodno kreirani projekt u IDE-u. U IntelliJ-u idite u mapu src i tamo kopirajte sadržaj neraspakirane arhive (dva direktorija).

Slika 21: Obje mape su kopirane u src direktorij

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

Slika 22: Izvorni tekstovi pojavili su se u projektu

Ako kliknemo na bilo koji element s popisa, vidjet ćemo izvorni tekst. Kao što možete vidjeti na snimci zaslona u nastavku (izvorni tekst klase LoginActivity), izvorni kod je maskiran pomoću ProGuarda.

Slika 23: Zamagljeni izvorni tekst klase LoginActivity

Povezivanje programa za ispravljanje pogrešaka

Sada kada projekt ima izvorni kod, možemo početi postavljati prijelomne točke na metode i varijable. Kada se dosegnu prijelomne točke, aplikacija će se zaustaviti. Kao primjer, postavio sam prijelomnu točku na metodi (desno u maskiranom kodu) odgovornoj za obradu informacija unesenih u tekstualno polje.

Slika 24: Prijelomna točka postavljena je na maskiranu metodu.

Čim se pojavi prijelomna točka, povežite debugger s procesom na uređaju klikom na ikonu zaslona s desne strane gornji kut(ikona može biti drugačija na vašem IDE-u).

Slika 25: Spajanje debuggera na proces

Slika 26: Popis procesa za povezivanje debuggera

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

Slika 27: Debugger priključen na proces koji se izvodi na uređaju

U tekstualno polje unijet ću broj 42 (ako se sjećate, na odgovarajućoj metodi postoji prijelomna točka).

Slika 28: Unesite broj 42 u tekstualno polje

Nakon pritiska na tipku Enter Code, aplikacija će se prekinuti na prijelomnoj točki jer je debugger svjestan koja se metoda poziva na uređaju. Sastavljena Android aplikacija sadrži informacije o ispravljanju pogrešaka (kao što su nazivi varijabli) koje su dostupne bilo kojem programu za ispravljanje pogrešaka kompatibilnom s Java Debug Wire Protocolom (JDWP). Ako vaša aplikacija ima omogućeno otklanjanje pogrešaka, JDWP-kompatibilan program za ispravljanje pogrešaka (većina programa za ispravljanje pogrešaka uključenih u Java razvojna okruženja spada u ovu kategoriju) moći će se povezati s virtualni stroj Android aplikacije, a zatim pročitati i izvršiti naredbe za otklanjanje pogrešaka.

Slika 29: Prijelomna točka

Snimka zaslona u nastavku prikazuje broj koji smo prethodno unijeli u tekstualno polje.

Slika 30: Popis varijabli trenutne instance klase

Zaključak

Ne samo da možemo čitati podatke u aplikaciji, već i unositi svoje. Ovo može biti korisno ako, na primjer, želimo prekinuti tijek izvođenja koda i zaobići neke dijelove algoritma. Pomoću debuggera možemo bolje razumjeti logiku aplikacije i analizirati ono što je nedostupno prosječnom korisniku. Na primjer, pregled korištenih funkcija šifriranja i dinamičkih ključeva može biti od velike pomoći. Također, ponekad je prilikom otklanjanja pogrešaka korisno znati kako funkcije komuniciraju s sustav datoteka ili bazu podataka kako biste razumjeli koje informacije pohranjuje aplikacija. Slične manipulacije dostupne su na bilo kojem Android uređaju bez privilegija superkorisnika.

Pješčanik

Bog poslužitelj 18. rujna 2011. u 15:55

Pregled alata za pokretanje i otklanjanje pogrešaka u aplikacijama na Androidu

  • Drvna soba *

Dok sam razvijao svoju prvu Android aplikaciju, naišao sam na problem pokretanja aplikacije za testiranje i otklanjanje pogrešaka. Ovaj bi članak trebao pomoći korisniku početniku u odabiru alata za emulaciju.

Android virtualni uređaj (AVD)
Montaža:
Ovaj alat za emulaciju ugrađen je u Android SDK.

Postavka:
(koristeći primjer korištenja u Eclipse)
Prozor > Android SDK i AVD Manager > Novo
Upisujemo naziv virtualnog uređaja, platformu, veličinu memorijske kartice, vrstu zaslona...
Pritisnite Stvori AVD.

Pokretanje:
Prvo pokretanje emulatora traje jako dugo, posebno na slabim uređajima. Na primjer, jedva sam čekao prvo pokretanje na svom netbooku, a kada sam ga prvi put pokrenuo na računalu, bio sam siguran da je emulator otišao u vječnu petlju.
Naknadna pokretanja emulatora bit će malo brža.
Vrijeme između pritiska na gumb "Pokreni" i pojavljivanja glavne aktivnosti testne aplikacije na emulatoru traje prosječno 11 sekundi. Mjerenja su provedena na prilično snažnom računalu.

Prednosti i nedostatci:
+ mogućnost testiranja aplikacije na različite verzije Android OS, na uređajima sa različiti tipovi prikaz...
+ razne postavke potrebne za testiranje, na primjer, promjena orijentacije zaslona
+ Emulacija SD kartice
- dugo vremensko razdoblje između pritiska na gumb "Pokreni" i pokretanja aplikacije na emulatoru
- emulator radi jako sporo, npr. ono što je telefon obradio za 1-2 sekunde, emulator je napravio za 8-10 sekundi

VirtualBox+Android x86
Instalacija i konfiguracija:
  1. Preuzmite i instalirajte VirtualBox.
  2. Preuzmite sliku.
  3. „Stvaramo virtualno Linux stroj 2.6/Drugi Linux, 512 Mb RAM, premoštena mreža, HD 2 Gb, onemogući integraciju miša. Povezivanje ISO datoteka i dignite se na jednu od LiveCD opcija (postoje opcije HDPI i MDPI)” ili slijedite ove upute.
  4. Pritisnite Alt-F1 za izlaz na konzolu i upišite netcfg i zapamtite IP adresu emulatora. Za povratak na GUI pritisnite Alt-F7.
  5. adb povezivanje

Pokretanje:
Nisam zabilježio vrijeme između pritiska na gumb "Pokreni" i pojavljivanja glavne aktivnosti testne aplikacije na emulatoru, ali, prema subjektivnim osjećajima, to se događa gotovo trenutno.

Prednosti i nedostatci:
+ kratko vrijeme između pritiska na gumb "Pokreni" i pokretanja aplikacije na emulatoru
+ brz rad na mjestima
- prilično dugotrajna i ponekad problematična instalacija
- emulator je na nekim mjestima spor, ima problema sa slikom (posebno na MDPI)
- problemi s emulacijom SD kartice, promjenom orijentacije zaslona,...
- samo dva (tri) dostupne verzije Android OS i samo dvije dostupne vrste zaslona

Android telefon povezan putem USB-a
Instalacija i konfiguracija:
  1. Uključujemo način otklanjanja pogrešaka na telefonu. (Postavke > Aplikacije > Razvoj > USB otklanjanje pogrešaka).
  2. Preuzmite upravljački program za svoj telefon.
  3. Povezujemo telefon s računalom.
  4. Instaliranje upravljačkih programa. Odjeljak ADB sučelje trebao bi se pojaviti u Upravitelju uređaja.
  5. adb uređaji. Ako se vaš telefon ne pojavi na popisu, ponovno instalirajte ADB upravljački program.

Pokretanje:
Otprilike 5 sekundi prođe između pritiska na tipku “Run” i glavne aktivnosti testne aplikacije koja se pojavi na telefonu.

Prednosti i nedostatci:
+ mogućnost da se aplikacija vidi onako kako će je korisnik vidjeti (vrlo važna točka, posebno kod izrade sučelja i dizajna aplikacije)
+ multitouch (ako ga vaš telefon ima)
+ promijenite orijentaciju zaslona, ​​akcelerometar (ako ga vaš telefon ima)
- samo jedna verzija OS-a i jedna vrsta zaslona
- drugi objekt će se pojaviti na fizičkoj radnoj površini

Zaključci:
Pokušao sam raditi sa svakim od ovih alata za emulaciju i odlučio sam se za ovu opciju:
1. pisanje i testiranje aplikacije putem telefona;
2. testiranje aplikacije na brojnim Android virtualnim uređajima s različitim kombinacijama verzije OS-a i vrste zaslona.
Nadam se da je čitatelj odabrao emulator ili naučio nešto novo za sebe.
Sretno s testiranjem!

Prilikom izrade Android aplikacija većina programera koristi razne emulatore. To je zgodno jer ne morate spremati hrpu raznih uređaja u ladice stola, nema glavobolje s povezivanjem uređaja na računalo, a na stolu nema hrpe žica. Kliknemo mišem i vidimo rad našeg programa na ekranu računala. Jednostavno i elegantno. Međutim, emulator nije telefon. On je ograničen u svojim mogućnostima. Ako vaša aplikacija koristi bilo koje specifične hardverske funkcije, poput onih koje se odnose na kameru, Bluetooth ili USB priključak, radeći tijekom primanja telefonskog poziva, s velikim stupnjem vjerojatnosti možemo reći da ne možete bez otklanjanja pogrešaka na stvarnom uređaju. Srećom, Eclipse sadrži sve što vam je potrebno za izvršenje ovog zadatka.

Povezivanje telefona i pokretanje programa

Prije povezivanja telefona s računalom pomoću putem USB-a podatkovnog kabela potrebno je izvršiti nekoliko priprema. Činjenica je da je Eclipse prema zadanim postavkama konfiguriran za rad s emulatorom i moramo prilagoditi konfiguraciju načina otklanjanja pogrešaka. Jednostavno je. Odaberite stavku izbornika Run > Debug Configuration, a zatim DroidDebug. Na kartici Target, u odjeljku Deployment Target Selection Mode, trebate postaviti prekidač na Manual i kliknuti Apply. Tako uključeni ručni mod odabir platforme. Sada, kada pokrenete aplikaciju, pojavit će se dijaloški okvir u kojem možete odabrati emulator ili jedan od povezanih telefona.

Kako bi telefon radio u načinu rada za otklanjanje pogrešaka, također ga treba konfigurirati u skladu s tim. Dok je uključen početni zaslon, trebate kliknuti na gumb Izbornik i pronaći aplikaciju “Postavke”. U ovoj aplikaciji otvorite odjeljak "Aplikacije", a zatim stavku "Razvoj". Na ekranu koji se otvori trebate potvrditi okvir pored "USB Debugging" (USD Debgging). Ovaj slijed radnji radi na većini telefona, ali sasvim je moguće da je na vašem uređaju UBS način otklanjanja pogrešaka omogućen negdje drugdje.

Povežite telefon s računalom i kliknite gumb Debug u Eclipseu. U dijaloškom okviru koji se pojavi vidjet ćete dva popisa: “Odaberite tekući Android uređaj” i “Pokreni novi Android virtualni uređaj”. Prvi od njih navodi telefone povezane s računalom, drugi - emulatore. Odaberite svoj telefon s prvog popisa. Eclipse će instalirati aplikaciju koju ispravljate na vaš telefon i pokrenuti je. Možete debugirati svoj program.

Praćenje statusa telefona DDMS (Dalvik Debug Monitor Service)

Sve informacije o statusu telefona dostupne su putem posebnog alata pod nazivom DDMS (Dalvik Debug Monitor Service) usluga nadzora. Da biste ga pokrenuli, kliknite gumb android u gornjem desnom kutu Eclipse.

DDMS prozor se sastoji od nekoliko panela. Ploča Uređaji prikazuje popis dostupnih emulatora i povezanih telefona. Evo popisa onih koji su se kandidirali ovaj trenutak procesima. Svaki proces radi u vlastitom virtualnom stroju. Niti se prikazuju na zasebnoj kartici Niti. Kartica File Explorer dizajnirana je za rad s datotečnim sustavom telefona. Pomoću njega možete kopirati datoteke s računala na telefon i natrag. Pomoću gumba Screen Capture možete napraviti snimku zaslona svog telefona. Zeleni gumb za bug omogućuje vam da priložite program za ispravljanje pogrešaka odabranom procesu. Da biste koristili ovu značajku, morate imati proces otvorenog koda.

Također vrijedi spomenuti uslužni program LogCat logging i njegovu odgovarajuću ploču, koja može biti vrlo korisna pri traženju pogrešaka. Rad s zapisnikom provodi se kroz posebnu klasu android.util.Log. Najčešće korištene metode su:

Log.e() - za greške u zapisivanju,
Log.w() - za zapisivanje upozorenja,
Log.i() - za zapisivanje informativne poruke,
Log.d() - za bilježenje otklanjanja pogrešaka,
Log.v() - za bilježenje detaljnih zapisa,

Ovim se metodama moraju proslijediti dva niza kao parametri. Prvi je oznaka, koja se zatim može koristiti za pretraživanje i filtriranje u LogCatu. Drugi su stvarni podaci koji se unose u dnevnik.