
第一步
资源文件会被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版》
1万+

被折叠的 条评论
为什么被折叠?



