Dekompilirajte in spreminjajte APK-je na poti z APKTool za Android [XDA Spotlight]

APKTool uporabljajo razvijalci in avtorji tem na namizju za dekompilacijo in spreminjanje APK-jev, ne da bi potrebovali izvorno kodo. To je vrata tega orodja za Android.

APKTool je zmogljiva programska oprema, ki jo je razvil XDA Senior Member ibotpeaches. Orodje vam omogoča datoteke APK obratnega inženiringa, ki vam omogoča dekodiranje datotek virov, tako da jih lahko spremenite in nato znova prevedete aplikacijo.

Izjemno težko je opredeliti, kako pomembno je to orodje za skupnost Android, toda seznam nekaterih njegovih bolj priljubljenih primerov uporabe bi vam moralo dati odlično predstavo, zakaj sta orodje in njegov razvijalec tako visoko ocenjena glede. APKTool se uporablja za priklop aplikacij na prej nepodprte naprave, tematizirajte nekaj svojih najljubših aplikacij, si oglejte nize datotek APK kaj lahko pride v prihodnjih posodobitvah in zagotovite prevodi za aplikacije. Po drugi strani pa se lahko tudi uporablja nečedno skrivati ​​in distribuirati zlonamerno programsko opremo ali obratno za aplikacijo Android testiranje prodora v Kali Linux.

APKTool je na voljo na Distribucije Linux/GNU in Microsoft Windows operacijskih sistemov od prve izdaje, vendar podpora za Android za orodje manjka že kar nekaj časa. Omejena podpora za naprave Android je bila na voljo nekaj mesecev, vendar so bile posodobitve za uradna različica orodja za Android prenehala leta 2013, zaradi česar je neuporabna za povratni inženiring katere koli sodobne datoteke APK. Vendar razvijalec z imenom Andro Črni je samostojno izdal posodobljene različice APKTool za Android, tako da lahko dekompilirate in spreminjate datoteke APK na poti s katerim koli rootana naprava Android.

XDA-Developers ne dopušča uporabe APKTool za kakršno koli piratstvo aplikacij. Obstaja veliko razlogov za uporabo APKTool, vendar spreminjanje aplikacije za namene piratstva ne bi smel biti eden izmed njih.


Sama aplikacija je nekoliko groba, saj vsebuje nekaj črkovalnih napak in precej hrošča preklopnik tem, a iskreno povedano bi me bilo vseeno, saj v Androidu ni nobenega drugega orodja, ki bi lahko to doseglo funkcionalnost. APKTool za Android počne natanko to, kar počne njegova različica za računalnike večjega brata – vzvratno inženirstvo datotek APK. Aplikacije lahko dekompilirate in znova prevedete neposredno v telefonu, kar je lahko uporabno, če želite hitro spremeniti vire APK-ja, ne da bi morali priti pred namizje. To je lahko še posebej uporabno za uporabnike, ki se morda znajdejo v situaciji, ko nenehno urejajo datoteko APK in jo pošiljajo v svojo napravo za testiranje v živo. Pozor, aplikacije APKTool ni mogoče uporabiti za dejansko urejanje dekompiliranih datotek, za to potrebujete urejevalnik besedil v svoji napravi.

Meni z nastavitvami vam omogoča, da spremenite temo aplikacije, kot je bilo omenjeno prej, vendar več pomembno je, da lahko izberete različici AAPT in APKtool, ki ju želite uporabiti pri deprevajanju APK-ja mapa. V nastavitvah je tudi kljukica za "root", brez katere je označena, ne morete pravilno prevesti aplikacij (in privzeto ni označena.)

Za delo z aplikacijami imate na voljo dva menija, enega prikažete s kratkim pritiskom, drugega pa z dolgim ​​pritiskom. Meni z enim dotikom, kot je prikazano spodaj, prikaže funkcije, ki jih lahko uporabite za delo z datoteko APK, glavne pa so Dekompiliraj vse in Podpis. Tukaj so številne druge funkcije, vendar vam te ne bi smele biti neznane, če imate predhodne izkušnje z APKTool.

Ko dekompilirate APK, lahko brskate po njegovi vsebini tako, da se preprosto dotaknete mape z imenom APK-ja, da prikažete njegovo vsebino. Če se dotaknete datoteke, se naloži privzeto vedenje Androida in vpraša, s katero aplikacijo želite odpreti datoteko s katerim bi na tej točki uporabili izbrani urejevalnik besedila ali slik, če poskušate spremeniti a vir.

Ko končate z urejanjem APK-ja, lahko svojo spremenjeno različico namestite tudi iz aplikacije APKTool. Meni z dolgim ​​​​pritiskom vam omogoča brisanje/preimenovanje datotek in map, vendar se tudi zaveda konteksta, tako da, ko dolgo pritisnite mapo in dobili boste možnost prevajanja vseh virov in smalijev v datoteko APK ponovno.

Orodje se mi je zdelo zelo uporabno za hitre spremembe obstoječe aplikacije, saj sem lahko dekompiliral obstoječo aplikacijo, spremenite datoteko strings.xml in znova prevedite aplikacijo, da si ogledate spremembe. Kako hitro orodje izvaja ta dejanja, pa je odvisno od vaše naprave. Na mojem Google Nexusu 6P je deprevajanje datoteke APK trajalo približno 2 minuti, medtem ko je ponovno prevajanje APK-ja trajalo še približno 2 minuti, tako da osebno ne bi želel uporabljati APKTool iz svojega telefona pogosto.

Delo z datotekami APK v telefonu ni najbolj preprost postopek, vendar orodje APKTool omogoča, da je to izvedljivo. Razvijalcem ne bi priporočal, da preidejo na izključno spreminjanje APK-jev v svojem telefonu Android, saj je počasen in ga je težje upravljati, vendar če imate Tablični računalnik Android in iščete bolj priročen način za pogoste majhne spremembe in njihovo preizkušanje v napravi v živo, potem je APKTool za Android vaš najboljši stava.


Viri

Namestite APKTool na vašo rootano napravo Android

Namestite APKTool v svojo napravo Linux/Windows

Sledite temi XDA

Prispevajte k projektu APKTool

Razpravljajte o APKTool na uradnem kanalu Gitter

Razpravljajte o APKTool na uradnem kanalu IRC