Android-apk打包流程

资源文件,使用aapt工具生成R.java文件,往R.java文件中产生一个资源id,aapt是gradle自动调用,.aidl文件通过aidl工具自动生成java interface代码,然后再加上基本的java代码,通过java编译器生成.class文件,再使用dx工具,将.class文件生成dex文件,然后再通过apk编译工具,将资源文件、其他文件、还有.class文件打包生成apk,最后再进行签名jarsigner或者apksigner工具,生成签名apk。
在生成dex的时候,还会进行对齐等等。
other Reasources一般是比如so文件、assets中的文件等等。还有AndroidManifest等
compiler Reasources也就是程序里的res文件下的文件
Zipalign是一个android平台上整理APK文件的工具,它对apk中未压缩的数据进行4字节对齐,对齐后就可以使用mmap函数读取文件,可以像读取内存一样对普通文件进行操作。如果没有4字节对齐,就必须显式的读取,这样比较缓慢并且会耗费额外的内存。
1.运行快 --- mmap
2.节省RAM 内存


本图偷用.png

你可能感兴趣的:(Android-apk打包流程)