Se você é um fã incondicional do Android, é provável queÉ importante que você experimente novos temas, ROMs personalizadas e todos esses mods para o seu dispositivo. Um dos principais pontos de confusão é a terminologia associada a esses mods - algo bastante familiar para os desenvolvedores, mas não muito para o usuário iniciante. Duas das palavras mais comuns em ROMs e temas personalizados são "deodexed" e "zipalign". Alguns dias atrás, abordamos o 'desodexado' em detalhes. Neste artigo, exploraremos o que significa zipalign e como APKs podem ser alinhados.

O QUE É ZIPALIGN?
zipalign é uma ferramenta de alinhamento de arquivo introduzidaprimeira vez com o Android SDK 1.6 (kit de desenvolvimento de software). Ele otimiza a maneira como um pacote de aplicativos Android (APK) é empacotado. Isso permite que o sistema operacional Android interaja com o aplicativo com mais eficiência e, portanto, tem o potencial de tornar o aplicativo e o sistema todo muito mais rápidos. O tempo de execução é minimizado para aplicativos zipaligned, resultando em menor quantidade de consumo de RAM ao executar o APK.
ASSIM COMO FUNCIONA EXATAMENTE?
Em um ambiente operacional Android, arquivos de dadosarmazenados em cada pacote de aplicativos são acessados por vários processos, por exemplo, o instalador lê o manifesto de dados para determinar as permissões associadas; o servidor do sistema pode ler esses recursos por vários motivos, como exibir notificações; o aplicativo inicial, por exemplo, lerá recursos para obter o nome e o ícone do aplicativo. Como o Android é baseado em uma verdadeira infraestrutura operacional multitarefa, esses arquivos são acessados de forma contínua e repetida. Finalmente, mas não menos importante, o próprio aplicativo lê os dados do manifesto.
Como o Android é baseado em Linux, o mapeamento de memória desempenha um papel importante.papel-chave na manipulação eficiente de processos. Essencialmente, o alinhamento ideal para o código de manipulação de recursos do sistema operacional Android são os limites de 4 bytes. O que isso significa é que, se os APKs estiverem mapeados na memória para limites de 4 bytes e alinhados de acordo, o sistema operacional não precisará "ler" todo o pacote de aplicativos para obter o manifesto de dados desejado. Todo processo do sistema saberá com antecedência onde procurar os recursos desejados e, portanto, executará muito mais suavemente e mais rapidamente.
Resumindo, zipaligning a APK resulta em todosdados não compactados dentro do pacote devem ser alinhados nos limites de 4 bytes, permitindo que todas as partes sejam acessadas diretamente com o mapa da memória. O consumo de RAM é reduzido durante a execução porque o código de consulta não precisa ler todo o pacote de aplicativos.
DESVANTAGENS DE APKs NÃO DESIGNADOS
Compreensivelmente, a situação seria reservadapara pacotes de aplicativos não alinhados. A leitura de recursos seria lenta e o uso de memória estaria na extremidade superior do espectro. Também dependeria de quantos aplicativos desalinhados estão presentes. Por exemplo, se um número menor de aplicativos com um aplicativo doméstico não alinhado, você verá um tempo de inicialização mais lento. Este é o melhor cenário. Para o pior cenário, ter vários aplicativos desalinhados resultará no sistema repetidamente iniciando e encerrando processos, lutando com atrasos e grande consumo de bateria.
COMO VOCÊ FAZ, ENTÃO?
Como mencionado anteriormente, a ferramenta zipalign tornou-se parte do Android SDK a partir de 1.6. Ele pode ser encontrado na pasta "ferramentas" do SDK. Para usá-lo, basta executar o comando:
zipalign [-f] [-v] <alignment> infile.apk outfile.apk
Onde infile.apk é o arquivo de origem e outfile.apk é o arquivo de saída.
Além disso, você também pode verificar o alinhamento de um arquivo APK usando o seguinte comando:
zipalign -c -v <alignment> existing.apk
Onde existing.apk pode ser qualquer pacote de aplicativos que você precisa para ser verificado. Também o <alinhamento> A tag nos dois comandos precisa ser uma integralvalor (caso contrário, o comando retornará inválido). Esse valor, embora possa ser qualquer número inteiro, DEVE sempre ser 4, o que forneceria alinhamento de 32 bits. Qualquer outro valor e efetivamente não fará nada.
Por fim, para os sinalizadores usados nesses comandos,
- -f : substitui o arquivo outfile.zip existente
- -v : dará saída detalhada
- -c : confirmará o alinhamento de um determinado arquivo
PALAVRA DE ATENÇÃO: A operação zipalign deve ser executada apenas depois de você assinou o arquivo APK com o seu particularchave. Se zipaligned antes da assinatura, o procedimento de assinatura irá perturbar o alinhamento. O mesmo vale para qualquer outra alteração, adição ou remoção do arquivo APK. Qualquer alteração após a execução do zipalign desfaz o alinhamento.
Aviso Legal: Este guia destina-se apenas a fins educacionais. Isso não substitui o kit de ferramentas para desenvolvedores do Android, nem deve ser usado para fins de desenvolvimento. A AddictiveTips não fornece nenhum suporte relacionado ao material aqui apresentado.
Comentários