美文网首页
Android打包过程

Android打包过程

作者: dfqin | 来源:发表于2021-08-22 17:43 被阅读0次

1、编译资源文件
通过aapt(Android Asset Packaging Toos)工具对资源文件进行编译和打包。aapt会解析资源、为资源编制索引和编译为针对Android平台优化过的二进制文件,其中res/raw文件夹和assets文件夹下的文件还有图片资源不进行编译。编译后会生成R.java和resources.arsc文件,R为资源索引,arsc为资源映射表。
2、aidl文件处理
项目中如果存在aidl的话,会对aidl文件进行处理,生成对应的java文件。
3、编译工程源代码,生成class文件
调用javac编译src目录下的所有java文件,生成对应的.class文件。
4、转换class文件,生成classes.dex文件
使用SDK的dx工具,把class文件转换成dalvik虚拟机可以执行的dex文件。
5、生成apk文件
通过apkbuilder工具,把上面编译好资源文件、dex文件、lib文件打包成apk文件
6、生成签名后的apk文件
使用jarsigner工具,对上面的apk文件进行签名。

7、对apk文件进行字节对齐
使用zipalign对apk中的未压缩文件进行字节对齐,可以通过mmap直接访问这些文件,减少应用的内存使用。
mmap(memory mapping)主要好处是:1. 将文件映射到内存中,相比较文件读写有较高的性能。 2. 实现跨进程数据访问

参考:
https://blog.csdn.net/jason0539/article/details/44917745
https://developer.android.google.cn/studio/command-line/zipalign.html

相关文章

  • android apk打包过程

    具体请参考:android Apk打包过程概述_android是如何打包apk的

  • Android构建过程分析

    Android构建过程分析浅析 Android 打包流程

  • Dalvik虚拟机与ART虚拟机

    一.储备阅读: 1.Android 打包过程 打包流程图: 2.Android AAPT详解 AAPT - And...

  • Android 混淆使用入门笔记

    概述 混淆是Android Apk打包过程中的一个重要步骤,默认情况下,打包都是需要混淆过程的。 Android ...

  • Android 打包过程

    1.概况 Android APK是如何来的呢?怀着这个问题去查资料,发现了下边这张图。 由android的项目经过...

  • Android打包过程

    Android工程 --> 通过编译和打包 --> 生成了apk文件 --> 签名Signing --> 通过ad...

  • Android打包过程

    1、编译资源文件通过aapt(Android Asset Packaging Toos)工具对资源文件进行编译和打...

  • Android打包过程

    最近几天在集成一个第三方库后,apk编译出现appt error显示linking error,找不到某个v28的...

  • React Native Android打包详解

    BG: 上接前文iOS打包详解 Android打包过程: 通过前文iOS打包详解我们知道了RN项目的打包原理:对比...

  • Android Apk打包过程

    概述Apk其实是一个压缩包,当解压后,其内部主要就是资源文件和classes.dex。这个classes.dex文...

网友评论

      本文标题:Android打包过程

      本文链接:https://www.haomeiwen.com/subject/zqvciltx.html