Az Android alkalmazások bevezetésének és hibakeresési áttekintése. Fizikai eszköz csatlakoztatása Android Studio hibakeresési android alkalmazások az eszközön

Korábban írtam. A problémát drasztikusan megoldhatja, ne használja az emulátort, és azonnal tesztelje az Android futtató mobileszközön. Van egy csodálatos HTC, és felállítottam. Tehát, annak érdekében, hogy futtassa az alkalmazásokat a szükséges fizikai eszközön:

  1. A telefonon engedélyezze az USB hibakeresést. Ezt megteheti a Beállítások menü -\u003e Alkalmazások -\u003e Fejlesztés és telepítése az "USB Debug" jelölőnégyzetbe
  2. Várjon, hogy telepítse az illesztőprogramot
  3. Letiltja és csatlakoztassa a telefont a számítógéphez.

Annak ellenőrzésére, hogy a telefon látható-e a számítógéphez, a következőket kell tennie:

Ha így van, használhatja a speciális programot: pdanet. () Általában az internetet a telefonról a számítógépről használják, de kiderült, hogy hatalmas számú illesztőprogramot tartalmaz a telefonok számára. A telepítéskor megkérdeztem az eszközmodellt, és tovább ugrott egy gyönyörű vörös balzón, figyelmeztetve, hogy a vezető nem tesztelt, és minden lehet véget érni, de nem - minden rendben van, megalapozott. Ezt követően ismét megjelent egy csekket (a fenti parancsot), és a telefonom megjelent az eszközök listáján.

Hogyan kell dolgozni az Eclipse-től? Valójában minden megtörtént - csak futtassa a projektet, és megnyílik a telefonon.

Az Android alkalmazások létrehozásakor a legtöbb fejlesztő különböző emulátorokat használ. Ez kényelmes, mert nem kell tárolni egy csomó különböző eszközök a táblázatban dobozok, nincs fejfájás készülékeket csatlakoztat a számítógéphez, nincs halom huzalok az asztalra. Kattintson az egérre, és nézze meg a program munkáját a számítógép képernyőjén. Egyszerű és elegáns. Az emulátor azonban nem telefon. Korlátozott a képességeiben. Ha az alkalmazás konkrét hardver funkciók, mint például a működését a kamera, Bluetooth vagy USB kapcsolaton keresztül, a munka közben fogad egy telefonhívást, sok valószínűsége akkor azt mondják, hogy nem nélkülözheti a hibakeresés a valódi eszköz. Szerencsére az Eclipse mindent tartalmaz, amire szüksége van a probléma megoldásához.

A telefon csatlakoztatása és a program indítása

Mielőtt csatlakoztatná a telefont a számítógéphez USB adatkábellel, több előkészítő intézkedést kell végrehajtania. Az a tény, hogy az Eclipse úgy van kialakítva, hogy dolgozzon az emulátorral, és be kell állítanunk a hibakeresési mód konfigurációját. Ez egyszerű. Válassza ki a Run\u003e Debug Configuration menüpontot, majd a Droiddebug lehetőséget. A Cél lap telepítési cél kiválasztása üzemmód részben be kell állítani a kapcsolót kézi pozícióba, majd kattintson az Alkalmaz gombra. Így a kézi platform kiválasztási mód engedélyezve van. Most, amikor elindítja az alkalmazást, megjelenik egy párbeszédpanel, ahol kiválaszthat egy emulátort vagy az egyik csatlakoztatott telefont.

Ahhoz, hogy a telefont hibakeresési módban tegye, szintén ennek megfelelően be kell igazítani. A kezdőképernyőn a menü gombra kell kattintania, és keresse meg a beállítási alkalmazást. Ebben az alkalmazásban nyissa meg az "Alkalmazások" részt, majd a fejlesztési elemet. A megnyíló képernyőn az "USB debging" elem melletti jelölést kell tennie. Ez a műveletek sorrendje a legtöbb telefonon működik, de lehetséges, hogy a készüléken az UBS debug mód valahol máshol bekapcsol.

Csatlakoztassa a telefont a számítógéphez, és kattintson a debug gombra az Eclipse-ben. A megjelenő párbeszédpanelen két lista látható: "A futó Android eszköz" és az "Új Android virtuális eszköz indítása". Ezek közül az első felsorolja a számítógéphez csatlakoztatott telefonokat, a második emulátorokban. Válassza ki a telefont az első listában. Az Eclipse futtassa a telepítőalkalmazást a telefonra, és elindítja. Meghibásodhat a programod.

DDMS telefon állapotfigyelés (Dalvik Debug Monitor Service)

Minden telefonállapot információ egy speciális, DDMS hibakeresési szolgáltatás (Dalvik Debug Monitor Service) segítségével érhető el. A futtatásához kattintson a gombra az Android képével az Eclipse jobb felső sarkában.

A DDMS ablak több panelből áll. Az Eszközök panel megjeleníti a rendelkezésre álló emulátorok és a csatlakoztatott telefonok listáját. Itt van a jelenleg futó folyamatok listája. Minden folyamat a saját virtuális gépén kezdődik. A szálak külön szálak lapon jelennek meg. A File Explorer lap a telefonrendszerrel való együttműködésre szolgál. Ezzel másolhatja a fájlokat a számítógépről a telefonra és vissza. A Screen Capture gomb segítségével a telefon képernyőjén képernyőképet készíthet. A zöld bogárral ellátott gomb lehetővé teszi a hibakeresőt a kiválasztott folyamathoz. A funkció használatához nyílt forráskódot kell tartalmaznia ennek a folyamatnak.

Azt is meg kell jegyezni, hogy a LOGCAT naplózási segédprogram és a megfelelő panel, amely nagyon hasznos lehet a hibák keresésénél. A magazinnal való együttműködés az Android.util.log speciális osztályon keresztül történik. A leggyakrabban használták a következő módszereket:

Log.e () - hiba hiba,
Log.w () - naplózási figyelmeztetések,
Log.i () - az információs üzenetek naplózására,
Log.d () - a jobboldali hibakereséshez,
Log.v () - részletes rekordok naplózásához,

Mivel paraméterekként ezeket a módszereket két vonalra kell áthelyezni. Az első címke, amely ezután felhasználható a LOGCAT kereséséhez és szűréséhez. A második a tényleges információ, amely a magazinba kerül.

Homokozó

Isten szerver 2011. szeptember 18-án 15: 55-kor

Az Android alkalmazások bevezetésének és hibakeresési áttekintése

  • Fűrészáru *

Az első Android alkalmazás fejlesztése, futottam be a probléma ellenőrzésére és hibakeresésre. Ez a cikknek segítenie kell az új felhasználó kiválasztását emulációs eszközt.

Android virtuális eszköz (AVD)
Telepítés:
Ez az emulációs eszköz beágyazódik az Android SDK-be.

Beállít:
(Például az Eclipse használatára)
Ablak\u003e Android SDK és AVD Manager\u003e Új
Adja meg a virtuális eszköz, platform, memóriakártya méretét, megjelenítési típusát ...
Kattintson az AVD létrehozása gombra.

Fuss:
Az első indító emulátor nagyon hosszú ideig tart, különösen a gyenge eszközökön. Például soha nem lehetett várni az első dob az én netbook, de a kezdő először a számítógép volt abban, hogy az emulátor bement az örök körforgás.
Az emulátor későbbi elindítása kissé kisebb lesz.
A "RUN" gomb megnyomása és a vizsgálati alkalmazás fő aktiválásának megjelenése az emulátoron átlagosan 11 másodperc. Meglehetősen termelékeny számítógépre költözött intézkedések.

Előnyök és hátrányok:
+ Képesség az alkalmazás tesztelésére az Android operációs rendszer különböző verzióira, a különböző típusú kijelzővel rendelkező eszközökön ...
+ A teszteléshez szükséges különböző beállítások, például a képernyő tájolásának változása
+ Emulation SD kártya
- a "Run" gomb megnyomása és az alkalmazás indítása az emulátoron
- Az emulátor nagyon lassan működik, például az a tény, hogy a telefon 1-2 másodpercenként feldolgozott, az emulátor 8-10 másodperc alatt történt

Virtualbox + Android x86
Telepítés és beállítás:
  1. Töltse le és telepítse a virtualboxot.
  2. Töltse le a képet.
  3. "Hozzon létre egy virtuális gép Linux 2.6 / Egyéb Linux, 512 MB RAM, áthidalt hálózat, HD 2 GB, az egér integráció letiltása. Csatlakoztasson egy ISO fájlt, és töltse be az egyik LiveCD opciót (van egy HDPI és MDPI opció) ", vagy kövesse ezt az utasítást.
  4. Kattintson az Alt-F1 gombra a konzolból és írja be a NetCFG-t, és ne feledje az emulátor IP-címét. A GUI-hoz való visszatéréshez nyomja meg az Alt-F7 gombot.
  5. adb Connect.

Fuss:
A "RUN" gomb megnyomása és a vizsgálati alkalmazás fő aktiválásának megjelenése az emulátoron nem blokkolt, de a szubjektív érzések szerint szinte azonnal megtörténik.

Előnyök és hátrányok:
+ kis idő alatt a "Run" gomb megnyomása és az alkalmazás indítása az emulátoron
+ Helyek Chopper Work
- kellően hosszú és néha problémás telepítés
- Az emulátor lassan működik helyeken, vannak problémák a képen (különösen az MDPI-n)
- Problémák az SD-kártya emulációjával, a képernyő tájolásának megváltoztatásával ...
- csak két (három) elérhető az Android operációs rendszer és csak két elérhető megjelenítési típus

Telefon Android operációs rendszerrel USB-vel
Telepítés és beállítás:
  1. Kapcsolja be a telefon hibakeresését. (Formák\u003e Alkalmazások\u003e Fejlesztés\u003e USB hibakeresés).
  2. Töltse le a telefon vezetőjét.
  3. A telefont a számítógéphez csatlakoztatjuk.
  4. Telepítse a meghajtókat. Az ADB interfész szakasz az eszközkezelőben jelenik meg.
  5. aDB eszközök. Ha a telefon nem jelenik meg a listában, akkor telepítse újra az ADB illesztőprogramot.

Fuss:
A "RUN" gombra kattintva és a teszt alkalmazás fő aktiválása a telefonon körülbelül 5 másodpercet vesz igénybe.

Előnyök és hátrányok:
+ Az a képesség, hogy az alkalmazást felhasználóként láthassa (nagyon fontos pillanat, különösen az alkalmazás felületének és tervezésének létrehozásakor)
+ Multitach (ha van a telefonban)
+ Képernyő-tájolás, gyorsulásmérő (ha van a telefonban)
- Az operációs rendszer csak egy változata és az egyik típusú kijelző
- Egy másik objektum megjelenik a fizikai asztalon

Következtetések:
Megpróbáltam dolgozni mindegyik emulációs eszközzel, és abbahagytam ezt a verziót:
1. Az alkalmazás írása és tesztelése a telefon használatával;
2. Vizsgálja meg az alkalmazást számos Android virtuális eszközön az OS verzió és a megjelenítési típus különböző kombinációival.
Remélem, hogy az olvasás az emulátor választását végezte, vagy megtanultam valami újat magamnak.
Sok szerencsét a tesztelésben!

A fejezet célja az Android alatti minimális alkalmazás megírása. De soha nem fogjuk tudni pontosan, ha képesek lennénk valamit dolgozni, anélkül, hogy megpróbálnánk futtatni az igazi eszközön. Ezzel foglalkozunk ezzel a cikkkel.

Az okostelefon tesztelésének képességét az ADB (Android Debug Bridge) biztosítja. Ebben a cikkben konfiguráljuk, és elindítjuk alkalmazásunkat ezen okostelefonon.

Mi az adb.

Az Android Debug híd (ADB) egy olyan univerzális parancssori eszköz, amely hozzájárul a fejlesztési környezet közötti kölcsönhatáshoz, az ügyünkben Android Studio és az AVD emulátorok vagy fizikai Android eszközök a kiindulási és hibakeresési alkalmazások megkezdéséhez.

Az ADB egy kliensből áll, egy olyan kiszolgálóból, amely háttérfolyamatként működik, egy fejlesztő számítógépén és egy démonról, aki egy emulátor vagy valódi eszköz minden egyes példányán háttérfolyamatként működik.

Az Android eszközök konfigurálása az ADB-vel való együttműködéshez

Annak érdekében, hogy az ADB USB-eszközzel való használatához engedélyezze az USB hibakeresést a telefon vagy táblagép rendszerbeállításaiban a "Fejlesztői beállítások" szakaszban (a név eltérhet). Néhány eszközön ez a rész alapértelmezés szerint el van rejtve. Fontolja meg az eset lépéseit, ha nincs kívánt beállítás.

  1. Menjen a beállításokhoz, "On Device"
  2. Keresse meg a "Build Number" elemet, és kattintson rá 7 alkalommal. Olyan ablak, amelyről bejelentkezik, hogy a fejlesztői mód aktiválva van.
  3. Most a beállítások a fejlesztői paraméterek részének kell lenniük.
  4. Kapcsolja be a "Debug USB" opciót.

Most, hogy csatlakoztatja a készüléket a számítógéphez, a modelltől függően új kapcsolat opcióval rendelkezik.

ADB SETUP ON Windows rendszeren

A Windows konfigurálásakor először győződjön meg róla, hogy van egy Google USB illesztőprogramja. Menjen az SDK menedzserre az Extrák részben, és keresse meg a Google USB illesztőprogramot, szükség esetén telepítse.


Most frissítenie kell az illesztőprogramot. Csatlakoztassa a készüléket a számítógéphez, menjen a Vezérlőpultra -\u003e Berendezések és hang -\u003e Eszközkezelő megtalálja a készüléket. Jobb egérgombbal kattintson a készülékre a helyi menü megnyitásához, és válassza a "Illesztőprogramok frissítése ..." lehetőséget. Az illesztőprogram megtalálható az SDK könyvtárban az almappában \\ (SDK könyvtár) \\ extras \\ google \\ usb_driver.

Hogyan ellenőrizheti az ADB beállítások helyességét?

Az ADB teljesítményének ellenőrzéséhez csatlakoztassa a készüléket a számítógéphez, futtassa a mappa (SDK Directory) \\ platform-tools parancssorba, és írja be a parancsot:

ADB eszközök.

Úgy jelenik meg az ilyen lista:

Az eszközök listája 5CDB2CED eszköz

Futtasson egy alkalmazást egy igazi eszközön

Ugyanaz, mint az emulátor futása esetén. Nyissa meg projektünket az Android Studio-ban, kattintson a zöld háromszögre, de a megjelenő eszközválasztó ablakban válassza ki a készüléket.


Ha azt írja, hogy a készülék offline állapotban van, vegye be az USB-t, és engedélyezze az USB hibakeresését a számítógéphez:

Ennek eredményeképpen alkalmazásunk a telefonon vagy a tabletta képernyőn megjelenik.

Következtetés

Ez befejezi a fejezetet. Sikerült: konfigurálhatjuk rendszerünket az Android alkalmazások fejlesztéséhez, és akár az egyiket is a jelenlegi eszközön futtathatja.

Ha valami aktívan nem működik, vagy zavaros, kérjük, leiratkozzon, kérjük, kérjük, a megjegyzésekben, és segítsen foglalkozni a problémával.

Decompilation és hibakeresés android alkalmazások

Alexander Antipov.

A cikk lesz szó, hogyan kell csatlakoztatni a hibakereső az Android alkalmazást, és lépésről lépésre halad át a módszerek az úgynevezett kapott információkkal alkalmazása után dekódoláshoz.


A cikk lesz szó, hogyan kell csatlakoztatni a hibakereső az Android alkalmazást, és lépésről lépésre halad át a módszerek az úgynevezett kapott információkkal alkalmazása után dekódoláshoz. A jó hír az, hogy a hibakeresés nem igényli a szuperus jogosultságát. A leírt technikák nagyon hasznosak lehetnek során mobil alkalmazás penstructions, hiszen tudjuk „behatolni” a kódot a program során, hogy és nyilván az, amit általában nem jut. Például elfoghatja a forgalmat a titkosítás előtt, és kulcsokat, jelszavakat és más értékes információt kaphat a repülésről. A cikk hasznos lesz a penss és a mobilalkalmazás fejlesztők számára, akik mélyebb ismereteket szeretnék elérni az Android platform lehetséges támadásairól.

A vizsgálati környezetre vonatkozó követelmények:

  • Operációs rendszer: Windows / Mac OS X / Linux
  • Java (ajánlott 1.7-es verzió)
  • IDE (Eclipse, Intellij Idea, Android Studio)
  • Android SDK (https://developer.android.com/sdk/index.html?hl\u003di)
  • Apktool (https://code.google.com/p/androidroid-apktool/) / APK stúdió (http://apkstudio.codeplex.com)
  • Eszköz / emulátor az Android alapján

A cikk a következő konfigurációt fogja használni: Windows 8, Android Studio és Intellij ötlet. Eszköz: Nexus 4 android verziójú 4.4.4. Javaslom az összes segédprogramot, hogy hozzáadhassa az útvonal környezeti változót, hogy megkönnyítse és gyorsítsa fel ezeket az eszközökhöz való hozzáférést.

A cikkben használt Android alkalmazáscsomag (APK) letölthető innen: com.netpi.egruber.test.apk .

Eszközbeállítás

Az alábbi utasítás segít a kísérletek készítéséhez.

A fejlesztői beállítások szakasz aktiválása

Az Android-eszköz elindításához megengedett az USB (USB hibakeresési opció) hibakeresése, amely lehetővé teszi, hogy "kommunikáljon" egy eszközzel az Android SDK készlet szerszámok segítségével. Azonban szükség van a fejlesztői beállítások szakasz aktiválására. A készüléken lépjen a Beállítások\u003e A Telefonrészről, és kattintson többször az építési számra, majd az üzenet jelennek meg, hogy a fejlesztői beállítások szakasz aktiválva van.

1. ábra: A fejlesztői beállítások szakasz aktiválásához többször is kattints a Build számra

Hibakeresés USB-n keresztül

Az USB porton keresztül történő hibakeresés engedélyezéséhez lépjen a Beállítások\u003e Fejlesztői beállítások menüpontra, és jelölje be az USB hibakeresés melletti négyzetet.

2. ábra: Az USB opciók hibakeresésének engedélyezése

A készülék csatlakoztatása és az ADB indítása

Miután az eszközt számítógéphez csatlakoztatta az USB-porton keresztül, megjelennie kell az "A készüléken csatlakoztatott USB hibakeresés" üzenet. Ellenőrizze, hogy csatlakozhasson-e az Android SDK (Android SDK platform-tools csomag) Android Debug Bridge (ADB) alkalmazásával (ADB) alkalmazásával. A parancssorba írja be a következő parancsot:

A készüléket a listában kell megjeleníteni.

3. ábra: A csatlakoztatott eszközök listája

Ha az eszköz nem jelenik meg a listában, akkor a legvalószínűbb oka a helytelenül telepített illesztőprogramokban (Windows). A készüléktől függően az illesztőprogram megtalálható az Android SDK-ban vagy a gyártó honlapján.

Ellenőrizze a hibakereséshez

Az Android alkalmazások hibakeresése előtt először meg kell vizsgálni, hogy van-e ilyen lehetőség. Az ellenőrzés többféleképpen is elvégezhető.

Első út a futtatáshoz Android eszköz monitoraz Android SDK-ban (az Eszközök mappában) szerepel. A Windows rendszerben a fájlt monitornak nevezik. Az Android készülék monitor megnyitásakor a készülék megjelenik az Eszközök szakaszban.

4. ábra: Android Device Monitor alkalmazás

Ha az eszközön lévő bármilyen alkalmazás hibakerhet, akkor ez az alkalmazás a listában is megjelenik. Készítettem egy tesztprogramot, de a lista üres, mivel lehetetlen lebontani a programot.

Az alkalmazás hibakeresési alkalmazásának második módja az alkalmazás az androidmanifest.xml fájl felfedezése az alkalmazáscsomagból (APK, Android alkalmazáscsomag). Az APK egy zip archívum, amely tartalmazza az összes olyan információt, amely az Android-eszközön történő alkalmazás megkezdéséhez szükséges információt tartalmazza.

Ha az alkalmazások betöltődnek a Google Play Store-ból, az alkalmazáscsomag is betöltődik. Az összes letöltött APK fájlt általában az eszközön tárolja a / Data / App mappában. Ha nincs superuser jobb oldala, akkor nem lesz képes a fájlok listájára a / Data / App könyvtárból. Bár, ha ismeri az APK-fájlt, másolhatja a segédprogram használatával adb.. A név apk fájljának megismeréséhez adja meg a következő parancsot:

Megjelenik a készülék parancssora. Ezután írja be a következő parancsot:

pM listacsomagok -f

Megjelenik a készülék összes csomagjának listája.

5. ábra: Csomagok listája az eszközön

Nézd meg a listát, találunk egy tesztalkalmazást.

6. ábra: A létrehozott tesztalkalmazás csomagja (kiemelt fehér)

Most meg kell másolnia a csomagfájlt. Megnyitjuk a héjat, és megadjuk a következő parancsot:

adb pull /data/app/[..apk fájl]

7. ábra: Az APK fájl másolása az eszközről a rendszerre

Most meg kell nyitnia a csomagfájlt, és fedezze fel az AndroidManifest.xml tartalmát. Sajnos nem tudjuk kicsomagolni az archívumot, mivel az APK fájl bináris formátumban van kódolva. A hasznosságot leggyakrabban a dekódoláshoz használják. apktool, bár használom APK stúdió.Mivel ez az alkalmazás barátságos grafikus felülete van. Ezután a cikk az APK stúdióról szól.

Az APK stúdióban kattintson egy kis zöld ikonra, állítsa be a projekt nevét, és adja meg az APK fájl elérési útját. Ezután adja meg, hogy a projekt mentése legyen.

8. ábra: Új projekt létrehozása APK stúdióban

Az APK megnyitása után válassza ki az AndroidManifest.xml fájlt, és ellenőrizze az alkalmazáscímke paramétereit. Ha az Android zászló: hibás (vagy jelen van, de a hamis érték be van állítva), azt jelenti, hogy az alkalmazás nem hibakult.

9. ábra: Az AndroidManifest.xml fájl tartalma

Az androidmanifest.xml fájl módosítása

Az APKTOOL vagy APK Studio Utility használatával módosíthatjuk a fájlokat és a csomag tartalmát a csomaghoz. Most megváltoztatjuk az androidmanifest.xml fájlt, hogy az alkalmazás hibakerhessék. Hozzáadva az alkalmazáscímke belsejébe, az Android vonal: Debuggerable \u003d "True".

10. ábra: Módosítsa az alkalmazáscímke tartalmát

Miután hozzáadott egy zászlót a "Hammer" ikonra kattintva, és gyűjtsd össze a csomagot. Az összeszerelési csomag az építés / APK könyvtárban található.

11. ábra: Az összeszerelési csomag sikeresen befejeződött

Az újjáépítés után a csomag előfizetése és újratelepítheti azt az eszközön (az összes Android alkalmazást alá kell írni). A legtöbb alkalmazás nem ellenőrzi a tanúsítványt, amellyel az aláírás bekövetkezik. Ellenkező esetben módosítania kell a kódot, amely végrehajtja ezt az ellenőrzést.

Most telepítenie kell egy összeszerelt csomagot. Először törölje a régi alkalmazást a következő parancs segítségével:

aDB PM Uninstall

Ezután állítsa be az új csomagot:

adb telepítés [.apk fájl]

A csomagot egy parancs segítségével is törölheti és telepítheti:

adb install -r [.apk fájl]

12. ábra: Megfelkeltő csomag telepítése

Ellenőrizze, hogy a visszaállítási alkalmazás helyesen indult-e az eszközön. Ha minden működik, menjen vissza az Android Device Monitorba, ahol a vizsgálati alkalmazásnak megjelennie kell.

13. ábra: Most a visszaszerzett alkalmazás hibakeresése

Fejlesztési környezet konfigurálása (IDE)

Most a debugger felvehető a ReSsend-Edged alkalmazáshoz, de először létre kell hoznia egy projektet a fejlesztési környezetben (a cikk az Intellij ötletet használja). Hozzon létre egy új projektet. Az Alkalmazás neve mezőben adja meg az önkényes nevet. A Csomagnév mezőben megadja a nevet, pontosan egybeesik a meghosszabbított csomag mappájának hierarchiájával.

14. ábra: Új projekt létrehozása az Intellij ötletben

Általában a neve a APK fájlt egybeesik a mappastruktúrát, de ha nem biztos, hogy APK Studio, ellenőrizze a könyvtárhierarchiában azt a mappát, ahol az alkalmazások találhatók. Az én esetemben a mappák neve és szerkezete teljesen egybeesik (com.netpi.egruber.test).

15. ábra: A tesztalkalmazás könyvtárak hierarchiája

Törölje a jelölőnégyzetet, és töltse ki a projekt létrehozását (minden más paraméter továbbra is alapértelmezett). Az új projektnek ilyennek kell lennie:

16. ábra: Az új projekt mappáinak és fájljainak hierarchiája

Miután létrehozott egy projektet, add forráskódot az APK fájlt, hogy a hibakereső „tudott” a nevét a karakterek, módszerek, változók, stb A jó hír, hogy az Android alkalmazásokat lehet lebontani szinte minőségromlás nélkül (a forráskód megfelel az eredetivel). A dekomponens után a forrás szöveget importálják a fejlesztési környezetre (IDE).

Forrásszövegek beszerzése az alkalmazáscsomagból

Először meg kell konvertálnia az APK-t a JAR fájlba. Ezután a Java-dekompiler segítségével megkapjuk az alkalmazás forrásszövegét. A JAR-hez való áttérés a segédprogrammal jár dex2jar. A dex2jarnak van egy d2j-dex2jar.bat fájlt, amelyet az APK átalakítására használtak. A csapat szintaxisa meglehetősen egyszerű:

d2j-dex2jar.bat [.apk fájl]

17. ábra: APK konvertálása a jarban

Ezután nyissa meg vagy húzza a fogadott fájlt a JD-GUI-ben (ez egy Java decompiler).

18. ábra: Jar fájlszerkezet

A jar fájlt hierarchikus struktúra formájában kell megjeleníteni, amelyen belül a Java-fájlok olvasható forráskóddal rendelkeznek. Menjen a Fájlhoz\u003e Minden forrás mentse az összes forrásszöveget a ZIP archívumban.

19. ábra: A dekompiled fájl forrásszövegeinek mentése

A forrásszövegek mentése után csomagolja ki az archívumot egy külön könyvtárba.

20. ábra: Csomagolt archívum

Most meg kell importálnia mindkét könyvtárat a korábban létrehozott projekthez az IDE-ben. Intellij megy az SRC mappába, és másolja a kicsomagolt archívum tartalmát (két könyvtár).

21. ábra: Mindkét mappát másolja az SRC könyvtárba

Visszatérve az Intellijba, frissített projektet látunk.

22. ábra: A projektben a forrásszövegek megjelentek

Ha a listából néhány elemre kattintunk, megjelenik a forrásszöveg. Amint az az alábbi képernyőképen látható (a logowtivity osztály forrásszövege), a forráskódot a Proguard segítségével írják le.

23. ábra: Az oppelted forrás szöveggel kapcsolatos szöveggelraktivitás

A hibakereső csatlakoztatása

Most, amikor a forrásszövegek megjelentek a projektben, elkezdhetjük a töréspontok telepítését a módszerek és változókon. A leállási pontok elérésekor az alkalmazás leáll. Példaként Telepítettem egy megálló pont a módszer (közvetlenül egy alkatrész-kód), amely felelős az információ-feldolgozás belépett a szövegmezőbe.

24. ábra: Helyezze az összetevő módszer leállítási pontját

Amint a leállítási pont megjelent, csatlakoztassa a hibakeresőt az eszközön lévő folyamathoz, kattintson az ikonra a jobb felső sarokban lévő képernyőn (az IDE-en az ikon eltérő).

25. ábra: Csatlakoztassa a hibakeresőt a folyamathoz

26. ábra: A debugger csatlakoztatásához szükséges folyamatok listája

A folyamat kiválasztása után a hibakeresés a készülékhez csatlakozik.

27. ábra: A hibakeresés az eszközön futó folyamathoz van csatlakoztatva

A szövegmezőben megadom a 42-es számot (ha emlékszel, a leállítási pont megéri a megfelelő módszert).

28. ábra: A szövegmezőben megadjuk a 42-es számot

Miután rákattintott az „ENTER CODE” gombra, az alkalmazás befejeződik a stop pont, mivel a hibakereső „tudatában”, amely módszer az úgynevezett a készüléken. Összeállította Android alkalmazás tartalmazza a hibakeresési információkat (például a változó nevek) álló bármely debugger összeegyeztethető Java Debug Banki Protocol (JDWP). Ha az alkalmazást hibakeresés engedélyezi, a JDWP-vel kompatibilis hibakereső (ebben a kategóriában a Java fejlesztési médiában futó legtöbb hibakervező) csatlakoztatható az Android alkalmazás virtuális gépéhez, majd elolvashatja és végrehajtja a Debug parancsokat.

29. ábra: Megállította a stoppontot

Az alábbi képernyőkép megmutatja a szövegmezőbe korábban megadott számot.

30. ábra: Az osztály jelenlegi példányának változók listája

Következtetés

Nem csak az alkalmazás adatai elolvashatjuk, hanem beilleszthetjük sajátjukat is. Ez hasznos lehet, ha például azt szeretnénk megszakítani a kód végrehajtásának áramlását, és megkerülni kell az algoritmus egyes részeit. A hibakereső használatával jobban megérthetjük az alkalmazás logikáját, és elemezhetjük, hogy mi nem áll rendelkezésre a szokásos felhasználó számára. Például nagyon hasznos lehet a használt titkosítási funkciók és a dinamikus kulcsok megtekintése. Ezen kívül néha, amikor hibakeresés hasznos tudni, hogyan funkciók működnek együtt a fájlrendszer vagy adatbázis, milyen adatokat tárol a kérelmet. Az ilyen beavatkozások állnak rendelkezésre Android eszközökön adminisztrátori jogosultságokat.