Descompilar e recompilar Classes.dex com facilidade

É justo dizer que, a menos que você tenha passado algum tempo vasculhando os arquivos APK e fazendo alguns trabalhos pesados modificações em aplicativos ou no próprio sistema operacional Android, você provavelmente não se deparou com um arquivo .smali em sua forma natural ambiente. Eles são um componente comum em muitos dos ajustes e hacks mais populares do Android, como adicionar botões de alternância, estender o menu de energia e adicionar animação de tela CRT desligada.

Os próprios arquivos muitas vezes podem ser encontrados dentro de APKs e ficam disponíveis para modificação assim que esse arquivo específico é descompilado com um utilitário como APKTool. Infelizmente, esses arquivos pequenos às vezes têm a tendência de se esconder dentro do classes.dex de um arquivo JAR e tornam-se um pouco mais complicados e demorados para alcançar e manipular. Seguindo seu recente guia para comandos ADB, XDA Senior Member iamareebjamal montou uma ferramenta de um clique que permitirá descompilar o classes.dex de qualquer arquivo APK ou JAR com facilidade.

Basta colocar o arquivo relevante na pasta de entrada, descompilar, fazer as alterações necessárias nos arquivos recém-disponíveis, recompilar e verificar a pasta de saída para sua versão modificada. É simples assim. Obviamente existem alguns pré-requisitos para isso, nomeadamente algum tipo de dispositivo de computação pessoal rodando Windows, Java (de preferência em software forma líquida), os arquivos e ferramentas relevantes (notepad++, um gerenciador de arquivos, etc.) e alguma ideia do que você realmente gostaria de alcançar como resultado final. Se você tiver tudo isso à sua disposição, isso pode economizar muito tempo e vale a pena visitar o tópico original.