APK
Android Package (APK) | |
---|---|
![]() | |
Extensão do arquivo | .apk
|
MIME | application/vnd.android.package-archive
|
Tipo de formato | Formato de Pacote |
Variante de | JAR e ZIP |
Android Application Pack, ou Android Package (abreviado APK, em português Pacote de Aplicação Android) é um arquivo de aplicação proprietário da empresa Google destinado ao sistema operacional móvel Android, um formato de arquivo informático de instalação de aplicativos .apk; comparado com os arquivos proprietários de instalação de software do sistema Windows, como o .exe
ou o .msi
.
Este tipo de arquivo informático tem um formato semelhante a compressão que é feita pelo ZIP, e em seu interior ficam todos os arquivos necessários para a instalação de apps e jogos[1]. Para criar um arquivo APK, todo o código-fonte da aplicação é compilado e depois empacotado em um único arquivo, usando ferramentas como o programa aapt, dx.bat (encontradas no Android SDK), javac, usado na compilação das classes java presente no código-fonte[2], e outros programas específicos. O APK é um formato de compressão ZIP baseado no formato JAR.
O APK pode ser obtido oficialmente na loja virtual do Google Play ou baixados em sites de terceiros ou também, após o desenvolvimento da aplicação feita em um Ambiente de Desenvolvimento Integrado (IDE) como o Android Studio ou no Kit de Desenvolvimento Android (SDK)[3] via linha de comando. Caso o APK seja baixado em sites de terceiros, a instalação é feita simplesmente clicando no arquivo.apk baixado no smartphone Android. Já para os desenvolvedores a instalação é feita automaticamente no emulador Android. Se caso o desenvolvedor queira testar a aplicação no smartphone, usa-se o programa de depuração adb (Android Debugger). Também são encontrados instalados nativamente no sistema, são chamados popularmente de "apps nativos" como por exemplo: relógio, calendário, telefone, contatos, etc.
Conteúdo do APK[editar | editar código-fonte]
O arquivo APK, geralmente contém os seguintes arquivos e diretórios:
META-INF /
:diretório que contém:MANIFEST.MF
:arquivo de manifesto.CERT.RSA
:certificado de aplicativo.CERT.SF
:listas de recursos e assinatura criptografada baseado em SHA-1.
lib /
:diretório que contém código nativo compilado para uma arquitetura de processador específica. Exemplo: armeabi-v7a, arm64-v8a, mips, x86, etc.res /
:diretório de recursos. É dividido em vários subdiretórios:drawable /
: diretório de arquivos Bitmap (.png
,.9.png
,.jpg
,.gif
) ou arquivos XML.layout /
: diretório de arquivos XML que definem um layout de interface do usuário.mipmap /
: diretório de ícones com diferentes densidades que será exibido no inicializador (launcher).values /
: diretório de arquivos XML que contêm valores simples, como strings, números inteiros, cores, estilos e dimensões.
Além dos diretórios citados anteriormente, há outros diretórios específicos como: anim/, menu/, raw/, xml/, etc.[4]
AndroidManifest.xml
: arquivo de manifesto adicional do Android contendo o nome e versão do aplicativo, permissões de acesso, etc.[5]classes.dex
: arquivo executável Dalvik compilado a partir do código-fonte java, e executado na Máquina VIrtual Dalvik ou no Android Runtime (ART).resources.arsc
: arquivo que contém recursos pré-compilados do diretório "values / " usados na aplicação.[6]
Referências
- ↑ «O que é um arquivo APK e para o que serve? - AndroidPIT». AndroidPIT
- ↑ Services, Geotechnical Software. «Building Android programs on the command line». geosoft.no. Consultado em 25 de março de 2018
- ↑ «Conheça o Android Studio | Android Studio». developer.android.com. Consultado em 25 de março de 2018
- ↑ «Fornecimento de recursos | Android Developers». developer.android.com. Consultado em 25 de março de 2018
- ↑ «Manifesto do aplicativo | Android Developers». developer.android.com. Consultado em 25 de março de 2018
- ↑ ryantzj (22 de janeiro de 2017). «Android Application/Package APK Structure Part 1». The Way of Ryantzj (em inglês)
Ver também[editar | editar código-fonte]
- AAB (formato Android App Bundle)