素材巴巴 > 程序开发 >

Android ant 脚本打包(一)

程序开发 2023-09-23 12:27:44

前两天看视频的时候,看到人家通过一个命令行就可以进行打包,觉得好神奇,就自己研究了一下,其实就是ant 打包技术,之前也听说过,但是一直都不会,自己查资料,琢磨了几天,终于研究了个入门,但是总算有点小成就,就记录下来

下面就是ant  打包的大体步骤:

 

1.配置JAVA的环境变量

(参考http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html),

 

   很多Java程序员由于使用Eclipse不配置Java环境变量也能正常运行代码。但是如果想使用Ant命令批量打包本步骤必不可少。

 

2.  下载Ant(这里的Ant不是eclipse和android SDk里面自带的ant)

     官方下载地址:http://ant.apache.org/

 

3. 解压Ant并配置环境变量

  a) 解压Ant,比如解压到D:ant

  b) 我的电脑->属性->高级->环境变量

   c) 系统变量新建ANT_HOME,变量值为d:ant

   d) 系统变量新建或修改PATH:将%ANT_HOME%bin;%ANT_HOME%lib添加到环境变量的PATH中 (注意以上路径均用反斜杠)

4. 验证ant配置是否正确

   在控制台输入Cmd 回车, ant 回车,如果出现:

   Buildfile: build.xml does not exist!

   Build failed

   恭喜你已经ant配置成功!!

5.通过更新项目,让项目自动生成build.xml文件。
自动生成build.xml  文件之前,首先应该查看自己当前的已安装的sdk版本: 

在cmd 命令行输入 android list target

如图:


 注意,这需要把SDK加入到环境变量中,详情请看

http://jingyan.baidu.com/article/f71d603757965b1ab641d12a.html

然后 在CMD 命令行输入:

androidupdate project -n xuean  -t 9 -pF:/workspace/practice/xuean

-n 后面 对应的是项目名称
-t 后面 就是我们之前查询的SDK版本对应的ID,大家根据自己的项目版本做出选择即可,我这个是android-17所以用ID9 .
-p 后面  就是项目的路径  这里可以给大家推荐一个插件,在eclipse上直接打开项目所在的文件下

OpenExplorer   这个很简单,只需要把这个jar包下载下来,然后直接放到eclipse的plugins就可以了。这样你在项目上单击右键的时候,就会多一个


在cmd命令行输入后,正常情况下,就可以看到下面这些信息了


这个时候在eclipse上  刷新项目工程,就会在项目的根目录多一个build.xml  文件,不建议更改build.xml 文件

 

 

6.配置ant.properties

在项目的根目录下面,新建一个ant.properties 的文件,里面的内容如下

 

# the config file for batch package.

application.package=com.leyou.thumb          (你的apk文件的包名)

ant.project.name=ThumbPlay              (你的apk文件的工程名)

java.encoding=utf-8

 

out.absolute.dir=C:/compile   (打好的渠道包要放到的目的位置)

gos.path=Z:/app-version/test                          

key.store=D:/androidApk/thumbplay/thumbplay.keystore    (keystore文件路径)

key.store.password=wushenshiji999            (keystore文件路径)

key.alias=muzhigame                    (keystore文件别名)

key.alias.password=wushenshiji999           (keystore文件别名密码)

 

上面已经写的很清楚了,我就不多说了,直接贴上我的配置把

 

 

7.使用ant 命令进行打包

终于到了最后一步了,在进行打包之前,建议先在eclipse上clean一下工程,因为如果不clean工程,可能会在打包出现问题的。

 

在CMD上 先切换到项目所在的路径下面


然后输入:

antclean release 

就可以快速打包了,到最后出现BUILDSUCCESSFUL 就说明打包成了,

 

 

然后在你的定义的目录下面:我的是 F:/by_ant 目录下面,然后就可以找到你要打的包了

就是那个 名称-release.apk  的文件

 

当然,还可以使用ant  进行多渠道打包的,以及混淆打包,这部分我还没有学会,暂时先放放的,以后学会了在记录

 

如果项目中还依赖包的话,那就在该依赖包项目下,执行第五步操作就可以了

8.在打包的时候可能遇到的问题:

问题一:antbuild xml 698 null returned 1:

找了半天终于找到解决的方案,详情参考: http://blog.csdn.net/wdany/article/details/38664637,或者说在打包之前,先使用eclipse进行clean一下项目就可以了

 

问题二: Keystorewas tampered with, or password was incorrect: Password verification failed

这个问题困扰了我两天,一直解决不了,不知道到底是哪里的缘故,百度了好长时间,还是没有百度出来,最后没办法,打开谷歌浏览器,用Google进行搜索吧,只有在谷歌浏览器上我可以使用GoAgent进行翻墙的,可是我很不喜欢chrome 浏览器的,因为一直都觉得chrome 特别吃内存的,每次打开chrome电脑都很卡的,也怪我电脑配置低的,可能百度不出来,只好翻墙Google了,没想到的是,在Google上还真找到了, http://mikewang.blog.51cto.com/3826268/1228639  就是在这个帖子上,找到了解决方案,看来百度还是不如Google好啊。

其实原因就是把你ant.properties中输入的空格都删除掉就可以了。这么简单的东西,竟然让我头疼了两天,差点都想放弃。看来以后还得多依靠Google,百度还是不太可靠啊。

 

参考文档有:

http://blog.sina.com.cn/s/blog_74c22b21010173f8.html 

http://www.cnblogs.com/lee0oo0/archive/2013/06/13/3133833.html

还有一些其他的,就不一一列举出来了

 

 

 


标签:

上一篇: CSRF(Cross-site request forgery) 下一篇:
素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。