Android ant 脚本打包(一)
前两天看视频的时候,看到人家通过一个命令行就可以进行打包,觉得好神奇,就自己研究了一下,其实就是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
还有一些其他的,就不一一列举出来了
标签:
相关文章
-
无相关信息