Como descompilar um app Android Apk

recentemente, nós publicamos um guia sobre como adicionar dependências para apenas produtos específicos. Depois de termos implementado os passos necessários, queríamos ter a certeza de que a final .apk realmente não contém mais nenhuma classe indesejada. Neste post, vamos mostrar-lhe como verificar que classes e recursos estão em um apk.

Nota: Este guia foi concebido para descompilar o seu próprio apk, e não o trabalho árduo de outros programadores. Assim, não incluímos quaisquer passos para reverter-engenharia ou contornar o código ofuscação.

>

Preparação: Instalar as Ferramentas

Um apk Android é basicamente uma zipado directory, que contém algumas matérias recursos (imagens, arquivos de layout, ..) and a classes.dex file. Este arquivo contém todos os códigos reais e nos interessa mais. Vamos baixar todas as ferramentas que precisamos:

  • você vai precisar abrir o apk. Você pode usar a funcionalidade incorporada do seu sistema operacional, ou instalar o seu arquivador favorito (un)como 7-Zip.
  • A fim de reverter o classes.dex file to a, você precisará baixar a ferramenta dex2jar.
  • Por último, a fim de tornar o ficheiro legível para o olho humano, baixar e executar Jd-Gui.

obter o seu código de volta

tudo bem, agora é hora de fazer o trabalho real. Copie o seu ficheiro apk para uma pasta em que deseja trabalhar. Descompacte o apk usando a ferramenta de sua escolha e você deve obter um diretório com alguns sub-diretórios e alguns arquivos.

Sinta-se à vontade para navegar na pasta AndroidManifest.xml ou na pasta res. A peça mais interessante é o classes.dex. Assim, mude para a sua ferramenta dex2jar e abra um novo terminal.se estiver no Mac OS, execute sh d2j-dex2jar.sh -f -o output.jar your_app_input.apk. Os usuários do Windows podem usar o arquivo .bat para criar o arquivo . Uma vez que a ferramenta passou, navegue para o novo arquivo .

visualizando o código descompilado

por último, Inicie o download JD-GUI ferramenta e use-o para abrir o arquivo .

vista de código Descompilada com JD-GUI

pode navegar em todos os pacotes e classes, que estão na sua apk. O código é uma versão despojada e não contém quaisquer comentários ou estruturas redundantes que você está vendo em sua IDE. Lembre-se, esta é a minimização compilada do seu aplicativo. No entanto, ele deve dar-lhe informações suficientes para aprender sobre o básico do aplicativo. Por exemplo, ele nos ajudou a verificar que não existem mais pacotes relacionados com a biblioteca admob no aplicativo.

outras opções

Se você só precisa de uma descompila rápida, você pode usar a ferramenta online em www.decompileandroid.com/.

para fins de descompilação mais avançados, você poderia dar uma olhada no apktool, que dá um monte de ajudantes adicionais.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *