Android Aligned Unaligned Apk
2017-01-17 16:01
936 查看
在编译Android app时,我们经常会看到debug得到的apk中,既有 app-debug.apk, 也有app-debug-unaligned.apk。
那么他们有什么不同呢?为什么又会有 unaligned的版本呢?
首先,我们应该明白一点:不管是app-debug.apk 还是 app-debug-unaligned.apk,都是signed apk。
也即是,
app-debug-unaligned.apk = unaligned signed apk
app-debug.apk = aligned signed apk
aligned apk基于zipalign进行了优化。
为什么为产生unaligned apk ?
其实,unaligned apk只是一个中间产物。
编译过程中,会先产生unaligned apk,之后对unaligned apk进行对齐优化产生 aligned apk。
要知道,Android app签名的流程如下:
--> 生成 private key (keytool 完成)
--> 编译生成unsigned apk (状态:未对齐,未签名)
--> 用private key进行签名 (jarsinger完成) (状态:未对齐,签名)
--> 使用zipalign进行签名 (状态:对齐,签名)
apk只有在签名之后才能使用zipalign进行优化。如果在签名之前就进行align优化,那么在签名时会回退之前的align操作。
因此会先进行签名,在进行align优化。因而中间会产生 unaligned signed apk (app-debug-unaligned.apk).
aligned apk的优势是什么?
aligned apk对ram使用进行了优化,可以减少app运行时的ram占用。
那么他们有什么不同呢?为什么又会有 unaligned的版本呢?
首先,我们应该明白一点:不管是app-debug.apk 还是 app-debug-unaligned.apk,都是signed apk。
也即是,
app-debug-unaligned.apk = unaligned signed apk
app-debug.apk = aligned signed apk
aligned apk基于zipalign进行了优化。
为什么为产生unaligned apk ?
其实,unaligned apk只是一个中间产物。
编译过程中,会先产生unaligned apk,之后对unaligned apk进行对齐优化产生 aligned apk。
要知道,Android app签名的流程如下:
--> 生成 private key (keytool 完成)
--> 编译生成unsigned apk (状态:未对齐,未签名)
--> 用private key进行签名 (jarsinger完成) (状态:未对齐,签名)
--> 使用zipalign进行签名 (状态:对齐,签名)
apk只有在签名之后才能使用zipalign进行优化。如果在签名之前就进行align优化,那么在签名时会回退之前的align操作。
因此会先进行签名,在进行align优化。因而中间会产生 unaligned signed apk (app-debug-unaligned.apk).
aligned apk的优势是什么?
aligned apk对ram使用进行了优化,可以减少app运行时的ram占用。
相关文章推荐
- Error:Android Packager: [应用名] java.io.FileNotFoundException: G:\xxx\应用名.unaligned.apk (拒绝访问。)
- Android Exception: Build failed,unaligned.apks 拒绝访问
- unaligned apk
- 【Android】使用Gradle打包时,获取svn的版本号,删除unalign.apk文件,获得版本号,并设定在打包的文件名称中
- Android运用Gradle build后生成的app-debug-unaligned.apk是什么?
- 我的Android进阶之旅------>解决:Failed to create 'build\outputs\apk\watch-debug-unaligned.apks': 拒绝访问。
- Android运用Gradle build后生成的app-debug-unaligned.apk 和app-debug.apk区别
- 关于 android apk安装 更新 卸载的几个问题
- android获取APK签名信息及MD5指纹
- [转载]Android APK反编译就这么简单 详解(附图)
- 将HTML5封装成android应用APK文件若干方法
- Android Studio编译输出apk文件修改文件名
- Android 模拟器安装APK
- Android APK反编译就这么简单 详解(附图)
- android apk 反编译
- android studio 学习笔记之 生成签名APK
- 【转】Android APK反编译详解(附图)
- android 两个apk之间恭喜数据SharedPreferences
- Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式
- 关于Android签名,从打包到导出apk