[Tutorial Android] Extrair e recompilar um .APK

Iniciado por Kosmus, Abril 15, 2020, 12:42:42 PM

tópico anterior - próximo tópico

0 Membros e 1 Visitante estão vendo este tópico.

Kosmus

Olá pessoal, este é um tutorial de como extrair, recompilar e assinar aplicativos para android.

Primeiro você precisa instalar em seu computador o "Java SE Development Kit" e baixar o "apktool" e o "signapk".
Java JDK: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
Apk tool: https://ibotpeaches.github.io/Apktool/install/
Sign apk: https://mega.nz/file/vFkA3CBJ#55FvBxyN5LoGNkh9pKpwzEka_Q_4fDFShv1CJ1ReSJk


CONFIGURANDO AS VARIÁVEIS DO AMBIENTE JAVA
Após ter instalado o java, antes de começar a mexer no .apk você precisa configurar as variáveis do ambiente java.
Clique com o botão direito em Meu Computador" e selecione Propriedades, vá em Configurações Avançadas do Sistema e Variáveis do Sistema. Nesta nova janela que abriu iremos criar duas novas variáveis e editar uma existente.

Em Variáveis do sistema clique em Novo, e crie a variável com nome "JAVA_HOME" e para colocar o valor clique Procurar no Diretório e selecione a pasta que o Java JDK está instalado, no meu computador se localiza em "C:\Program Files\Java\jdk1.8.0_251".
Crie outra nova variável com nome "CLASSPATH" e em Valor da variável coloque:

.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.­jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\l­ib\htmlconverter.jar;%JAVA_HOME%\jre\lib­;%JAVA_HOME%\jre\lib\rt.jar

Agora procure a variável "Path", selecione-a e clique em Editar, Editar Texto e dê um OK. Em Valor da variável vá até o final e coloque:

;%JAVA_HOME%\bin

Após terminado dê OK em tudo e REINICIE O SEU COMPUTADOR.


INSTALANDO O APK TOOL
Abra o link e você irar se deparar com "Installation for Apktool" procure por "wrapper script", clique com o botão direto em cima e clique em "Salvar link como". No Nome coloque "apktool.bat", em Tipo coloque Todos os arquivos e salve.

Procure agora por (find newest here), abra e baixe a última versão do apktool. No meu caso é a versão 2.4.1.
Crie uma pasta em seu computador chamada ApkTool, jogue os dois arquivos dentro dela, para facilitar o processo futuramente recomendo renomear o arquivo que você acabou de baixar para apenas apktool.


EXTRAINDO O .APK
Finalmente chegou a hora de extrair o dito cujo. Nesse tutorial para ilustrar irei extrair e recompilar o jogo Ace Attorney Investigations – Miles Edgeworth. Tendo o .apk em mãos, jogue-o dentro da pasta ApkTool, eu o renomeei para apenas AAI para facilitar futuramente.
Precisaremos abrir o Prompt de Comando mas ele precisará está apontado para a pasta do apktool, então cliqeu onde está o endereço da pasta, apague o endereço, digite cmd e dê um Enter.

Após aberto o Prompt de Comando para saber se ele está apontando corretamente para a pasta do apktool basta ver se o endereço da pasta está correto. No meu caso tá certo.

Para todos os comandos que vamos digitar no Prompt de Comandos eu sugiro que digite manualmente invés de copiar e colar.
Para iniciarmos precisaremos intalar o Framework do APK. Digite:
apktool if (nome do apk)

Dê um enter e aguarde um momento. Se tudo der certo aparecerá "Framework installed to..."
Para extrair o apk digite:
java –jar apktool.jar d –s (nome do apk)

Este processo pode demorar um pouco mais, depende do apk. Para saber se já terminou de extrair basta esperar aparecer este "C:\Users\i...".
Pronto, dentro da pasta apktool foi gerada uma nova posta com o seu apk extraído. Cabe a você explorar e descobrir o que é cada coisa.


RECOMPILANDO O .APK
Após ter feito as devidas mudanças iremos recompilar o apk.
Se tiver fechado abra o Prompt de Comando novamente com ele apontado para a pasta do apktool.
Digite e dê enter:
java –jar apktool.jar b (nome da pasta extraída)

Abra a pasta do seu apk extraído e dentro dela terá sido gerada uma nova pasta chamada "dist", dentro dela estará o novo apk recompilado.


ASSINANDO O .APK
Acha que acabou? Pois está enganado, para o aplicativo funcionar no seu dispositivo ele precisa ter uma assinatura. É aqui que entra aquele arquivo que baixamos lá no início, o SignApk.
Extraia o SignApk.rar e dentro da pasta gerada cole o novo apk que você gerou.
Faça novamente aquele mesmo esquema de abrir o Prompt de Comando mas desta vez apontando para a pasta do signapk.
Digite:
java -jar signapk.jar certificate.pem key.pk8 (nome do apk) (novo nome para o apk)

Pronto, foi gerado o novo apk, basta instalar no seu dispositivo.

Espero que este tutorial tenha sido útil para você.
ROMHACKING TÁ VIVO!

Gamerulez

Já vou deixar guardado pra fuçar uns jogos no futuro hehe  :bomba:
"O único momento em que um advogado pode chorar é quando tudo estiver acabado." - Godot