首页 >> 大全

Ant打包APK

2023-09-04 大全 29 作者:考证青年

除了使用IDE将工程打包生成APK之外,我们也可以使用Ant对工程进行打包。使用Ant对工程进行打包的好处在于我们可以根据自己的需要定制打包流程。下面就来详细说说通过Ant对工程进行打包生成APK的过程。

一、首先是我们的准备工作,需要工程:

打包带_打包机_

这就是我们打包需要的工程目录,我们打包一个工程需要的最基本的文件包括:

资产文件

第三方库 libs

资源文件 res

源代码 src

清单文件 .xml

二、工程准备好,我们还需要准备打包需要的工具,这些工具都在SDK当中。主要的工具有:

aapt 根据资源文件生成R文件

aidl 生成AIDL协议对应的java文件

dx将class文件编译为dex文件

将所有文件打包为apk

对apk进行签名

这些工具都在SDK当中,但是在SDK的r22.6.2版本不再提供.bat这个批处理命令,但是我们还是能够通过将.bat复制到新版本SDK的对应目录来使用其对工程进行打包。

三、下面就详细说说每一个命令在打包过程中具体的执行。

1、根据工程中的资源文件生成R.java文件

Generating R.java from the resources...

c53308b551472a2a70f148a2c3e70331

2、编译aidl文件

Compiling .aidl into java files...

3、将工程中的java源文件编译成class文件

Compiling java source code...		

4、将.class文件转化成.dex文件

Converting compiled files and external libraries into a .dex file...

5、对资源文件进行输出生成_res文件

Packaging resources and assets...

6、打包成未签名的apk

Packaging unsigned apk for release...It will need to be signed with jarsigner before being published.

对工程进行打包,其实就是将上面生成的文件压缩到名为apk的压缩包内,并且对其配置清单文件。apk也是一个压缩文件,将apk的文件类型改成zip,用解压缩软件打开,可以看到apk压缩包目录下的所有文件,如图:

1df5eae0c01266712e17cab4ea312362

7、对apk进行签名

Packaging signed apk for release...

对apk进行签名使用的是JDK自带的签名工具,需要先生成对应的,然后使用该对apk进行签名。

8、发布

APK is released. path:${out-signed-package-ospath}

上面的过程参考了 ,非常感谢博主的总结。

四、上面对apk进行打包的操作,详细展示了工程打包为apk文件的过程,但是从SDK的r22.6.2版本,不再SDK当中提供.bat,虽然现在能够继续使用,但是不推荐这种方式进行打包,其实的SDK默认已经为我们提供打包脚本,我们只需要执行命令就能够对指定的工程进行打包。在SDK的tools目录下我们发现一个名为的命令,如图:

432bfe7250e9fd3bf0de2ce8edbeb154

94076d2b6381107f09977b5004ce9a98

这个命令就是SDK提供给我们对工程进行打包的命令,执行命令,能够在指定工程生成build.xml文件,只需要执行该文件即可完成打包的过程。下面我们使用该命令对工程进行打包。

1、执行

build ant build.xml from project...

其中,-n指定APP的名称,-p指定需要生成build.xml文件的工程,-t表示使用的SDK的的版本。

执行该命令之后,进入到工程的根目录,我们可以看到,工程当中多出如下的文件,这就是SDK替我们生成的打包文件,其中主要用到build.xml对工程进行打包。

_打包带_打包机

2、向工程的根目录复制名为ant.的属性文件,该属性文件的内容:

key.store=keystone的路径
key.alias=keystone的别名
key.store.password=密钥
key.alias.password=密钥

生成的build.xml文件需要该属性文件对apk进行签名,打开build.xml文件我们可以看到如图:

打包带__打包机

build.xml文件当中引用到ant.属性文件,继续往下看,如图:

打包机__打包带

可以看到其实在这个build.xml文件当中,引用到SDK自带的build.xml,其实打包的主要过程都是在SDK自带的build.xml当中进行的。

3、指定打包操作

在工程的根目录下执行ANT命令,就可以进行打包操作,SDK默认提供两种方式的ant命令

debug模式

模式

五、使用SDK生成的build.xml文件进行打包,不仅执行过程非常简单,而且对于依赖工程的打包也非常方便,所以更推荐使用该种方式进行打包。

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了