APK: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
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

  1. «O que é um arquivo APK e para o que serve? - AndroidPIT». AndroidPIT 
  2. Services, Geotechnical Software. «Building Android programs on the command line». geosoft.no. Consultado em 25 de março de 2018 
  3. «Conheça o Android Studio | Android Studio». developer.android.com. Consultado em 25 de março de 2018 
  4. «Fornecimento de recursos | Android Developers». developer.android.com. Consultado em 25 de março de 2018 
  5. «Manifesto do aplicativo | Android Developers». developer.android.com. Consultado em 25 de março de 2018 
  6. ryantzj (22 de janeiro de 2017). «Android Application/Package APK Structure Part 1». The Way of Ryantzj (em inglês) 
Ícone de esboço Este artigo sobre Formato de arquivo de computador é um esboço. Você pode ajudar a Wikipédia expandindo-o.