图解apk编译打包过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/byhook/article/details/83060836

第一步

资源文件会被aapt工具处理为最终的resources.arsc,并生成相关的R文件。

第二步

如果本地存在.aidl文件,则生成相对于的Java Interfaces类文件。

第三步

Java编译器会将R.java源代码文件aidl相关的接口文件,统一编译成.class文件

第四步

dex工具对生成的.class文件以及第三方库代码进行处理,生成.dex文件

第五步

接下来会将生成的.dex文件resources.arsc,以及其他资源(如.so文件)生成一个初始的apk文件

第六步

使用签名工具对初始的apk文件进行签名

第七步

会通过zipalign对上述签名后的apk文件进行优化,对apk包中的数据进行边界对齐,从而加快读取和处理速度,目的是提高程序的加载速度和运行速度。

参考
《深入理解android内核设计思想 第2版》

猜你喜欢

转载自blog.csdn.net/byhook/article/details/83060836