关于android apk打包流程的详解
来源:互联网 发布:mac用手机app 编辑:程序博客网 时间:2024/06/14 13:34
Android 开发者对于apk再熟悉不过了,但是对于apk是如何生成的,它的打包流程是什么可能还不是很了解。
当然无论是早期Ant或者是目前主流的gradle其实原理以及大致步骤都是一样的。先看下官网的流程图:
主要包括两个过程:
1,编译过程,编译的内容包括本工程的文件以及依赖的各种库文件,编译的输出包括dex文件和 编译后的资源文件。
2,打包过程。配合Keystore对第一步的输出进行签名对齐,生成最终的apk文件。
上图的具体步骤如下:
1,Java编译器对工程本身的java代码进行编译,这些java代码有三个来源:app的源代码,由资源文件生成的R文件(aapt工具),以及有aidl文件生成的java接口文件(aidl工具)。产出为.class文件。
2,.class文件和依赖的三方库文件通过dex工具生成Delvik虚拟机可执行的.dex文件,可能有一个或多个,包含了所有的class信息,包括项目自身的class和依赖的class。产出为.dex文件。
3,apkbuilder工具将.dex文件和编译后的资源文件生成未经签名对齐的apk文件。这里编译后的资源文件包括两部分,一是由aapt编译产生的编译后的资源文件,二是依赖的三方库里的资源文件。产出为未经签名的.apk文件。
4,分别由Jarsigner和zipalign对apk文件进行签名和对齐,生成最终的apk文件。
总结为:编译-->DEX-->打包-->签名和对齐
这篇文章对打包有更加细致的解读:
http://blog.csdn.net/jason0539/article/details/44917745
0 0
- 关于android apk打包流程的详解
- Android APK打包流程详解
- Android Apk的打包流程
- android apk打包流程
- Android Apk打包流程
- android打包apk流程
- Android APK打包流程
- Android APK打包流程
- Android APK打包流程
- Android eclipse打包apk的流程
- 详谈Android apk打包:关于APK数字签名详解介绍
- unity3d-配置Android环境,打包发布Apk流程详解
- unity3d配置Android环境,打包发布Apk流程详解
- unity3d-配置Android环境,打包发布Apk流程详解
- unity3d配置Android环境,打包发布Apk流程详解
- Android Studio apk 打包流程
- Android笔记 - APK打包流程
- Android Studio apk 打包流程
- JAX-WS与JAX-RS区别是什么?
- gcc,gdb,makefile
- Adoptable Storage
- 手工集成7牛SDK到YII2框架中
- 值传递和引用传递,java到底按什么传递的
- 关于android apk打包流程的详解
- 实际项目中的消息中心
- redis常用操作
- 【LeetCode】461Hamming Distance
- ios调试技巧
- 学习Vue.js过程中的知识补充
- 行为识别:让机器学会“察言观色”第一步
- 第71篇 一对多自由控制语音(二)及PHP MySQL 预处理语句
- 学习u3d笔记(一) OnGui实现动态创建cube组件 并按钮控制cube旋转 停止 销毁