O Android gradle produz apk em dois binários: desalinhado e alinhado.
O documento dizia ...
Depois de assinar o APK com sua chave privada, execute zipalign no arquivo. Essa ferramenta garante que todos os dados descompactados iniciem com um alinhamento de bytes específico, relativo ao início do arquivo. Garantir o alinhamento nos limites de 4 bytes fornece uma otimização de desempenho quando instalado em um dispositivo. Quando alinhado, o sistema Android consegue ler arquivos com mmap (), mesmo que contenham dados binários com restrições de alinhamento, em vez de copiar todos os dados do pacote. O benefício é uma redução na quantidade de RAM consumida pelo aplicativo em execução.
Parece que o apk alinhado é altamente recomendado para distribuir. Para mim, só uso o apk alinhado como resultado e ignoro o apk não alinhado .
O apk desalinhado tem algum uso especial durante o desenvolvimento?
O APK não alinhado (assinado) é necessário porque a assinatura de um apk alinhado desfaz o alinhamento.
Dos documentos :
Veja esta resposta para mais. Aqui está o processo de compilação detalhado:
fonte