Android应用程序(APK)的编译打包过程

来源:互联网 发布:mac电脑防火墙设置 编辑:程序博客网 时间:2024/05/16 10:32

前言

android系统上所识别的安装包后缀名为.apk

1.通过aapt工具打包资源文件和清单文件到R.java中。
2.通过aidl工具将aidl文件转为java文件
3.上面所产生的java文件通过java编译器编译成class文件
4.dx工具将class文件和jar文件转化为classes.dex文件
5.通过apkbuilder工具将classes.dex转化为apk

在AndroidSDK的build-tools目录中我们能发现一些打包工具
这里写图片描述

java文件转化为class文件是通过JDK中的javac命令实现的,
classes.dex转化为apk是通过

接下来我们去解压一个apk安装包,看看里面都有什么内容?
这里写图片描述

各个目录介绍:
assets:资源目录,不同于res,这里面的资源会原封不动的打包到apk中
META-INF:存放签名信息,既然有签名信息,那必然有签名文件,默认的签名文件在下面的目录中这里写图片描述

debug.keystore就是签名文件,密码是android,我们可以在命令窗口输入下面的命令来查看详细信息:首先需要进入签名文件所在目录,
这里写图片描述

我们打开META-INF目录:看到下面三个文件
这里写图片描述

下面介绍如何通过CERT.RSA文件查看签名信息,首先我们需要进入META-INF目录,然后输入下面的指令:

keytool -printcert -file META-INF/CERT.RSA

这里写图片描述
res:资源目录
AndroidManifest.xml:清单文件
classes.dex:dalvik的执行的字节码文件
resources.arcs:编译后的二进制资源文件

0 0
原创粉丝点击