Avalados por :
Hoje gostaria de compartilhar com você minhas descobertas sobre como modificar um arquivo .apk existente.
Um arquivo .apk representa o aplicativo móvel conforme instalado em um dispositivo móvel, como um smartphone, tablet, dispositivo portátil, etc.
Tal arquivo .apk é um arquivo simples que pode ser aberto com qualquer empacotador como, por exemplo, WinRAR
Portanto, você pode abri-lo facilmente e ver os arquivos, embora ver a maioria dos arquivos não o deixará feliz, pois perceberá que estão compilados, em formato binário, etc.
... mas essa é outra história.
De qualquer forma, você pode abrir o arquivo e então modificar qualquer arquivo de recursos e salvar a modificação no arquivo.
Mas se tentar instalar o .apk no smartphone (ou tablet ou outro dispositivo similar), receberá um erro.
A seguinte captura de tela mostra o erro ao instalar o aplicativo de exemplo modificado myApp.apk em um dispositivo Android:
A razão é que após a modificação, o checksum e a assinatura não são mais válidos.
Portanto, simplesmente alterar um arquivo .apk não é possível.
No entanto, ainda existe o caso de uso válido de modificar ou substituir arquivos dentro de um arquivo .apk existente.
Por exemplo:
- arquivos localizados na pasta de ativos
- arquivos de propriedades que contêm dados de configuração
- imagens que podem ser substituídas
- recursos de informações de estilo
e similares.
Meu caso de uso pessoal foi:
Eu havia criado um aplicativo Android usando SAP Netweaver Gateway Productivity Accelerator.
Eu precisava entregar o aplicativo para meus usuários como arquivo .apk.
Mas havia o requisito de que queriam modificar o aplicativo pronto (alterar dados de configuração).
Então tive que descobrir como fazer isso: modificar o aplicativo sem ter acesso ao código-fonte.
A seguir, compartilho com você os passos necessários.
A descrição é baseada no seguinte software e versões:
Android API atual 19
Java 7
Windows 7
Se você não está familiarizado com o Android, mas deseja estar, pode querer consultar os documentos [1] e [2]
Todos os requisitos prévios para entender este blog estão explicados lá.
Nota:
Para executar os comandos descritos abaixo, você precisa ter o Java na variável PATH do seu sistema Windows (ver [1] para uma explicação).
Resumo
Há 3 etapas que devem ser seguidas para modificar um arquivo .apk existente:
1. Realizar as modificações desejadas dentro do arquivo .apk
2. Assinar o .apk
3. Instalar o .apk no dispositivo
1. Alterar o recurso no .apk
Abra o arquivo .apk com WinRAR (se isso não funcionar, altere a extensão do arquivo .apk para .zip)
Altere o recurso no arquivo conforme necessário (as ferramentas de empacotamento permitem alterar arquivos sem a necessidade de extrair o arquivo)
Depois de concluir suas alterações, você deve lidar com os arquivos de assinatura que fazem parte do .apk:
Dentro do arquivo, vá para a pasta META-INF
Exclua os arquivos *.RSA e *.SF existentes
A seguinte captura de tela mostra o conteúdo da pasta META-INF em um arquivo .apk
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute