Cum să decompilați un APK pentru aplicații Android

recent, am publicat un ghid despre cum să adăugați dependențe doar pentru anumite produse. După ce am implementat pașii necesari, am vrut să ne asigurăm că finala .apk de fapt nu mai conține clase nedorite. În această postare, vă vom arăta cum să verificați ce clase și resurse sunt într-un apk.

Notă: Acest ghid este conceput pentru a decompila propriul apk, și nu munca grea a altor dezvoltatori. Astfel, nu am inclus nici un pas pentru a inversa-inginer sau de lucru în jurul valorii de cod confuzie.

>

pregătire: instalarea instrumentelor

un apk Android este practic un director arhivat, care conține unele resurse brute (imagini, fișiere de aspect, ..) și un fișier classes.dex. Acest fișier conține tot codul real și ne interesează cel mai mult. Să descărcăm toate instrumentele de care avem nevoie:

  • va trebui să dezarhivați apk-ul. Puteți utiliza fie funcționalitatea încorporată a sistemului dvs. de operare, fie instalați arhivatorul preferat (ne), cum ar fi 7-Zip.
  • pentru a inversa fișierul classes.dexla un .jar, va trebui să descărcați instrumentul dex2jar.în cele din urmă, pentru a face fișierul .jarlizibil pentru ochiul uman, descărcați și rulați JD-Gui.

Noțiuni de bază Codul înapoi

bine, acum e timpul pentru a face munca reală. Copiați fișierul apk într-un director în care doriți să lucrați. Dezarhivați apk-ul folosind instrumentul ales de dvs. și ar trebui să obțineți un director cu câteva sub directoare și câteva fișiere.

dezarhivat .apk

nu ezitați să răsfoiți AndroidManifest.xml sau res director. Cea mai interesantă piesă este classes.dex. Astfel, treceți la instrumentul dex2jar descărcat și deschideți un nou terminal.

dacă sunteți pe Mac OS, executațish d2j-dex2jar.sh -f -o output.jar your_app_input.apk. Utilizatorii Windows pot utiliza fișierul .bat pentru a crea fișierul.jar. Odată ce instrumentul a rulat, navigați la noul fișier .jar.

vizualizarea codului decompilat

În cele din urmă, porniți instrumentulJD-GUI descărcat și utilizați-l pentru a deschide fișierul.jar.

Vizualizare cod decompilat cu JD-GUI

puteți parcurge toate pachetele și clasele, care sunt în apk. Codul este o versiune dezbrăcată și nu conține comentarii sau structuri redundante pe care le vedeți în IDE. Amintiți-vă, aceasta este minimizarea compilată a aplicației dvs. Cu toate acestea, ar trebui să vă ofere suficiente informații pentru a afla despre elementele de bază ale aplicației. De exemplu, ne-a ajutat să verificăm dacă nu mai există pachete legate de Biblioteca admob din aplicație.

alte opțiuni

Dacă aveți nevoie doar de o decompilare rapidă, puteți utiliza instrumentul online la www.decompileandroid.com/.

pentru scopuri mai avansate de decompilare, puteți arunca o privire la apktool, care oferă o mulțime de ajutoare suplimentare.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *