Android中使用Ant编译打包

Myth丶恋晨 2022-04-16 20:39 396阅读 0赞

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

  1. 本文参照自: [http://blog.csdn.net/xyz\_lmn/article/details/7268582?reload][http_blog.csdn.net_xyz_lmn_article_details_7268582_reload]

一、环境配置

1 .1、配置ant

首先 从ant 官网可 下载ant , 接着 解压 ant的包到本地目录, 紧 接着 在环境变量中设置 ANT_HOME 为你的ant所在目录, 然后 把%ANT_HOME%/bin加到你系统环境的path, 最后 在命令行执行 ant命令 测试其是否已经添加到了系统path中。

二、基本使用

2.1、使用android create 创建项目

参数说明:

- k /— package 为命名空间(包名)

- a /— name 工程名

- p /— path 项目

  • t 为目标平台的版本编号

实例1

C : \Users\hubin5\Desktop\temp\0 503 > android create project - k com . android . Tank - a Tank - t 4 - p G : \projects\tank Error : Project folder ‘G:\projects\tank’ is not empty . Please consider using ‘android.bat update’ instead . Updated file G : \projects\tank\src\com\android\Tank\Tank . java Updated file G : \projects\tank\res\values\strings . xml Updated file G : \projects\tank\res\layout\main . xml Updated file G : \projects\tank\AndroidManifest . xml Updated file G : \projects\tank\build . xml Updated file G : \projects\tank\proguard - project . txt

可以通过android-sdk\tools下的android.bat列出不同版本平台的对应id编号

命令1::android.bat list targets

命令2: android list

2.2、android update 更新现有项目

对已经存在的android工程,我们可以update下(修改平台的版本),这样会自动添加build.xml 等ant 的配置文件

示例1

C:\Documents and Settings\Administrator>android update project —name Tank -t 11 -p F:\tank

示例2

G:\temp>android update project —name Test -t 15 -p D:\workspace\test

Updated project.properties

Updated local.properties

Updated file D:\workspace\test\build.xml

2.3、打包

在Android工程中,我们可以使用 ant release或 ant debug来打包apk。

实例2

D : \workspace\test > ant release

Buildfile : D : \workspace\test\build . xml

在 使用ant release或ant debug打apk包时,默认使用当前目录的build.xml配置来进行打包。

当然我们可以使用-buildfile选项来制定 build.xml配置文件。

实例3

call ant release -buildfile test\build.xml

实例4

文件1

config.bat

set out_dir =. \out

set out_file_name = Appstore5_Phone

set NO =% Date :~ 0 , 4 %% Date :~ 5 , 2 %% Date :~ 8 , 2 %

set t =% Time %

if “%t:~0,1%” == “ “ (

set t = 0 % t :~ 1 %

)

set NO =% Date :~ 0 , 4 %% Date :~ 5 , 2 %% Date :~ 8 , 2 %% t :~ 0 , 2 %% t :~ 3 , 2 %% t :~ 6 , 2 %

set out_file_name =% out_file_name % _ % NO %. apk

文件2

build.bat

call config . bat

pushd dependency

call build . bat

popd

call android update project - p Appstore5_Utils - t android - 8

call ant release - buildfile Appstore5_Utils \build . xml

call android update project - p Appstore5_Download_Install - t android - 8

call ant release - buildfile Appstore5_Download_Install \build . xml

call android update project - p Appstore5_Common - t android - 8

call ant release - buildfile Appstore5_Common \build . xml

call android update project - p Appstore5_Phone - t android - 9

call ant release - buildfile Appstore5_Phone \build . xml

if not exist % out_dir % \ mkdir % out_dir % if exist % out_dir % \%out_file_name % del % out_dir % \%out_file_name % /q copy / y Appstore5_Phone \b in \Loft - release . apk % out_dir % \%out_file_name % pause

文件3

dependency\build.bat

call android update project - p lepay_Res - t android - 8

call ant release - buildfile lepay_Res\build . xml

call android update project - p lepush_Res - t android - 8

call ant release - buildfile lepush_Res\build . xml

call android update project - p leuser_Res - t android - 8

call ant release - buildfile leuser_Res\build . xml

三、签名

只要在Android工程的project.properties进行 示例3类似的配置,在使用Ant打包时,Ant就会对生成的apk文件进行签名.

示例3

文件project.properties中

has . keystore = true

has . password = true

key . store = debug . keystore

key . alias = androiddebugkey

key . store . password = android

key . alias . password = android

这里的数字签名文件 debug.keystore和project.properties处于同一目录。

关于请签名参考《 Android应用程序签名简介》

四、混淆打包

关于使用Ant混淆打包的知识请参考《 Android的代码混淆》

五、其他

  1. \* install:安装调试构建的包到运行着的模拟器或者设备;
  2. \* reinstall
  3. \* uninstall

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

发表评论

表情:
评论列表 (有 0 条评论,396人围观)

还没有评论,来说两句吧...

相关阅读

    相关 使用Ant打包Apk

      文章[ Android 使用Ant打渠道包][Android _Ant]讲解了如何使用Ant打渠道包,没有涉及具体的编译过程,例如使用Ant如何生成R文件等。那么今天,使用