为什么需要未对齐的 apk?

Android gradle 生成了两个二进制文件: 未对齐和对齐的 apk。

文件说..。

一旦你用你的私钥签署了 APK,在文件上运行 zipalign。此工具确保所有未压缩的数据相对于文件的开头以特定的字节对齐开始。当安装在设备上时,确保4字节边界的对齐可以提供性能优化。当对齐时,Android 系统能够使用 mmap ()读取文件,即使它们包含有对齐限制的二进制数据,而不是从包中复制所有数据。这样做的好处是减少了正在运行的应用程序所消耗的 RAM 数量。

似乎强烈建议分发联合 APK。对我来说,我只使用 结盟 apk 作为结果产品,而忽略 未结盟 apk。

未对齐的 apk 在开发过程中有什么特殊用途吗?

60280 次浏览

这是一个两步的过程,未对齐的 apk 只是一个中间产品。

  1. 生成未对齐的 apk
  2. 未对齐的则对齐并生成对齐的 apk

需要不对齐(已签名)的 APK,因为对对齐的 APK 进行签名将撤消对齐。

来自 医生:

注意: zipalign 必须只执行 之后的。Apk 文件已经用您的私钥签名。如果在签名前执行 zipalign,则签名过程将撤消对齐。

更多信息请参见 这个答案给你是详细的构建过程: enter image description here