返回
一文看懂Android APK的诞生,只有两张图就够了
Android
2023-10-08 21:28:29
国庆长假期间,和朋友聊天说起了Android的安装过程,顺带提到了.apk文件的构建过程。作为一个在Android领域打滚多年的老鸟,我还以为这点小知识人人都知道呢。不曾想朋友压根就没听过.apk文件是如何生成的,于是我打开了电脑和项目,一边说一边给他演示了一下。
既然决定要演示了,总不能让他看我的屏幕吧?所以我一边演示一边截图,最后整理成了这两张图。
这张是APK构建的流程图,也是编译Android项目的全流程,总共分为四个步骤:
1.编译Java/Kotlin代码:在这一步,Android编译器会将Java/Kotlin代码编译成字节码,并将其存储在.class文件中。
2.打包资源文件:在这一步,Android打包工具会将资源文件(如布局文件、图片文件、字符串文件等)打包成一个资源包(.arsc文件)。
3.合并字节码和资源:在这一步,Android打包工具会将.class文件和资源包合并成一个.dex文件,其中包含了所有应用程序的代码和资源。
4.生成APK文件:在这一步,Android打包工具会将.dex文件和其他一些文件(如清单文件、签名文件等)打包成最终的APK文件。
然后,整理这些步骤之后,我发现其实可以用一个更直观的流程图来表示,如下图所示。
这张流程图就更加直观了,而且更加简洁。因此,后面我准备就按照这张流程图来说明APK的构建过程。
+------------+
| Java/Kotlin |
+------------+
|
V
+-------------+
| Android |
| Compiler |
+-------------+
|
V
+------------+
| Dex |
| Builder |
+------------+
|
V
+------------------+
| Apk | |
| Packager | |
| | |
+------------------+
好了,以上就是Android APK的构建过程的全部内容了。