Android编译过程
可以看出生成一个apk有多复杂。
这里围绕几个关键的工具。
- aapt 处理Manifest,Resource,Assets资源,生成R.java文件
- aidl 处理.aidl文件,生成.java文件
- javac 处理java文件,jar包
- proguard 处理.class文件,jar包,对其进行混淆,压缩
- dex 处理混淆后的jar文件,生成.dex文件
- ndk-build 编译native代码,头文件,生成so库
- apkbuilder 生成apk文件
- jarsigner 签名apk文件
- zipalign 对apk文件进行对齐,做最后的优化