Come ottenere il codice sorgente dal file APK
Modo semplice: usa lo strumento online http://www.javadecompilers.com/apk, carica l'apk e ottieni il codice sorgente.
Modo più difficile
Procedura per decodificare i file .apk, metodo passo dopo passo:
Step 1:
- Fai una nuova cartella e copia il file .apk che vuoi decodificare.
- Ora rinomina l'estensione di questo file .apk in .zip (ad esempio rinomina da filename.apk a filename.zip) e salvalo. Ora potete accedere ai file classes.dex, ecc. A questo punto sei in grado di vedere i drawable ma non i file xml e java, quindi continua.
Step 2:
- Ora estrai questo file .zip nella stessa cartella (o in una nuova cartella).
- Scaricare dex2jar ed estrarlo nella stessa cartella (o NUOVA CARTELLA).
- Spostare il file classes.dex nella cartella dex2jar.
- Ora aprire il prompt dei comandi e cambiare directory in quella cartella (o NUOVA CARTELLA). Poi scrivi d2j-dex2jar classes.dex (per mac terminal o ubuntu scrivi ./d2j-dex2jar.sh classes.dex) e premi invio. Ora hai il file classes.dex.dex2jar nella stessa cartella.
- Scarica java decompiler, fai doppio click su jd-gui, clicca su open file, e apri il file classes.dex.dex2jar da quella cartella: ora ottieni i file di classe.
- Salva tutti questi file di classe (In jd-gui, clicca File -> Save All Sources) per nome src. A questo punto ottieni il sorgente java ma i file .xml sono ancora illeggibili, quindi continua.
Step 3:
Ora apri un'altra nuova cartella
- Metti il file .apk che volete decodificare
- Scaricate l'ultima versione di apktool E apktool install window (entrambi possono essere scaricati dallo stesso link) e metteteli nella stessa cartella
- Aprite una finestra di comando
- Ora eseguite il comando apktool if framework-res.apk e next
- apktool d myApp.apk (dove myApp.apk indica il nome del file che si vuole decodificare)
ora si ottiene una cartella di file in quella cartella e si possono leggere facilmente i file xml dell'apk's.
Step 4:
It's not any step just copy contents of both folder(in this case both new folder)to the single one
and enjoy the source code...
Source Is there a way to get the source code from an APK file?