APK: diferenças entre revisões
Linha 22: | Linha 22: | ||
| url = |
| url = |
||
}} |
}} |
||
'''Android Package''' ( '''APK''' ) é um arquivo destinado ao sistema operacional Android. É uma sigla em inglês da palavra Android Application Pack. Ele pode ser comparado com os arquivos proprietários de instalação de software do Windows, como o .exe ou o .msi. Acontece que o APK 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<ref>{{Citar periódico|titulo=O que é um arquivo APK e para o que serve? - AndroidPIT|url=https://www.androidpit.com.br/arquivo-apk-o-que-e|jornal=AndroidPIT|lingua=pt}}</ref> . 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 (linguagem de programação)|java]] presente no código-fonte<ref>{{Citar web|url=http://geosoft.no/development/android.html|titulo=Building Android programs on the command line|acessodata=2018-03-25|obra=geosoft.no|ultimo=Services|primeiro=Geotechnical Software}}</ref>, e outros programas específicos. O APK é um formato de compressão [[ZIP]] baseado no formato [[JAR (formato de arquivo)|JAR]]. |
'''Android Package''' ( '''APK''' ) é um arquivo de pacote destinado ao sistema operacional Android. É uma sigla em inglês da palavra Android Application Pack. Ele pode ser comparado com os arquivos proprietários de instalação de software do Windows, como o <code>.exe</code> ou o <code>.msi</code>. Acontece que o APK 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<ref>{{Citar periódico|titulo=O que é um arquivo APK e para o que serve? - AndroidPIT|url=https://www.androidpit.com.br/arquivo-apk-o-que-e|jornal=AndroidPIT|lingua=pt}}</ref> . 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 (linguagem de programação)|java]] presente no código-fonte<ref>{{Citar web|url=http://geosoft.no/development/android.html|titulo=Building Android programs on the command line|acessodata=2018-03-25|obra=geosoft.no|ultimo=Services|primeiro=Geotechnical Software}}</ref>, e outros programas específicos. O APK é um formato de compressão [[ZIP]] baseado no formato [[JAR (formato de arquivo)|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|Ambiente de Desenvolvimento Integrado]] (IDE) como o [[Android Studio]] ou no Kit de Desenvolvimento Android ([[Desenvolvimento de software para Android|SDK]])<ref>{{Citar web|url=https://developer.android.com/studio/intro/index.html?hl=pt-br|titulo=Conheça o Android Studio {{!}} Android Studio|acessodata=2018-03-25|obra=developer.android.com|lingua=pt-br}}</ref> 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. |
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|Ambiente de Desenvolvimento Integrado]] (IDE) como o [[Android Studio]] ou no Kit de Desenvolvimento Android ([[Desenvolvimento de software para Android|SDK]])<ref>{{Citar web|url=https://developer.android.com/studio/intro/index.html?hl=pt-br|titulo=Conheça o Android Studio {{!}} Android Studio|acessodata=2018-03-25|obra=developer.android.com|lingua=pt-br}}</ref> 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. |
||
Linha 28: | Linha 28: | ||
== Conteúdo do APK == |
== Conteúdo do APK == |
||
O arquivo APK, geralmente contém os seguintes arquivos e diretórios: |
O arquivo APK, geralmente contém os seguintes arquivos e diretórios: |
||
* META-INF / :diretório que contém: |
* <code>META-INF /</code> :diretório que contém: |
||
** MANIFEST.MF :arquivo de manifesto. |
** <code>MANIFEST.MF</code> :arquivo de manifesto. |
||
** CERT.RSA :certificado de aplicativo. |
** <code>CERT.RSA</code> :certificado de aplicativo. |
||
** CERT.SF :listas de recursos e assinatura criptografada baseado em SHA-1. |
** <code>CERT.SF</code> :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. |
* <code>lib /</code> :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: |
* <code>res /</code> :diretório de recursos. É dividido em vários subdiretórios: |
||
** drawable / : diretório de arquivos Bitmap (<code>.png</code>, <code>.9.png</code>, <code>.jpg</code>, <code>.gif</code>) ou arquivos XML. |
** <code>drawable /</code> : diretório de arquivos Bitmap (<code>.png</code>, <code>.9.png</code>, <code>.jpg</code>, <code>.gif</code>) ou arquivos XML. |
||
** layout / : diretório de arquivos XML que definem um layout de interface do usuário. |
** <code>layout /</code> : 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 ). |
** <code>mipmap /</code> : 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. |
** <code>values /</code> : 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.<ref>{{Citar web|url=https://developer.android.com/guide/topics/resources/providing-resources.html|titulo=Fornecimento de recursos {{!}} Android Developers|acessodata=2018-03-25|obra=developer.android.com|lingua=pt}}</ref> |
Além dos diretórios citados anteriormente, há outros diretórios específicos como: anim/, menu/, raw/, xml/, etc.<ref>{{Citar web|url=https://developer.android.com/guide/topics/resources/providing-resources.html|titulo=Fornecimento de recursos {{!}} Android Developers|acessodata=2018-03-25|obra=developer.android.com|lingua=pt}}</ref> |
||
* AndroidManifest.xml : arquivo de manifesto adicional do Android contendo o nome e versão do aplicativo, permissões de acesso, etc.<ref>{{Citar web|url=https://developer.android.com/guide/topics/manifest/manifest-intro.html?hl=pt-br|titulo=Manifesto do aplicativo {{!}} Android Developers|acessodata=2018-03-25|obra=developer.android.com|lingua=pt-br}}</ref> |
* <code>AndroidManifest.xml</code> : arquivo de manifesto adicional do Android contendo o nome e versão do aplicativo, permissões de acesso, etc.<ref>{{Citar web|url=https://developer.android.com/guide/topics/manifest/manifest-intro.html?hl=pt-br|titulo=Manifesto do aplicativo {{!}} Android Developers|acessodata=2018-03-25|obra=developer.android.com|lingua=pt-br}}</ref> |
||
* classes.dex : arquivo executável Dalvik compilado a partir do código-fonte java, e executado na [[Dalvik virtual machine|Máquina VIrtual Dalvik]] ou no [[Android Runtime]] ( ART ). |
* <code>classes.dex</code> : arquivo executável Dalvik compilado a partir do código-fonte java, e executado na [[Dalvik virtual machine|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.<ref>{{Citar periódico|ultimo=ryantzj|data=2017-01-22|titulo=Android Application/Package APK Structure Part 1|url=http://www.ryantzj.com/android-applicationpackage-apk-structure-part-1.html|jornal=The Way of Ryantzj|lingua=en}}</ref> |
* <code>resources.arsc</code> : arquivo que contém recursos pré-compilados do diretório "values / " usados na aplicação.<ref>{{Citar periódico|ultimo=ryantzj|data=2017-01-22|titulo=Android Application/Package APK Structure Part 1|url=http://www.ryantzj.com/android-applicationpackage-apk-structure-part-1.html|jornal=The Way of Ryantzj|lingua=en}}</ref> |
||
{{Referências}} |
{{Referências}} |
||
Revisão das 21h31min de 25 de março de 2018
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 Package ( APK ) é um arquivo de pacote destinado ao sistema operacional Android. É uma sigla em inglês da palavra Android Application Pack. Ele pode ser comparado com os arquivos proprietários de instalação de software do Windows, como o .exe
ou o .msi
. Acontece que o APK 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
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)