app-debug.apk和app-debug-unaligned.apk之间的区别


Answers:


113

未对齐的apk只是中间apk。首先,生成未对齐的apk。然后,未对齐的apk对齐并生成对齐的apk,即app-debug.apk。您可以在此处了解更多信息。


75

简短答案:

app-debug-unaligned.apk=未对齐的签名APK
app-debug.apk=已对齐的签名APK(使用zipalign优化了RAM)


长答案

要了解差异,我们需要了解以下几点:

应用签名过程

  • 生成私钥(keytool)
  • 编译以获取未签名的APK->未对齐的未签名的APK
  • 使用私钥(jarsigner)在调试/发布模式下对应用程序进行签名签名->未对齐的签名APK
  • 对齐APK (zipalign) ->对齐签名的APK

整个签名过程进行了说明这里

为什么我们完全需要中间体app-debug-unaligned.apk

根据文档

注意: zipalign仅在使用私钥对.apk文件签名才能执行。如果在签名之前执行zipalign,则签名过程将撤消对齐。

有什么好处?zipalign?

优点是对齐的APK已针对RAM使用进行了优化,因此它们将在设备中消耗更少的RAM。从文档

zipalign是一个存档对齐工具,可为Android应用程序(.apk)文件提供重要的优化。....好处是减少了运行应用程序时消耗的RAM数量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.