实现ant自动打包流程
1.进入项目的目录中,打开命令行窗口
android update project --name 项目名称 --path 项目的绝对路径
local.properties里面设置的是引用的参数,比如工具的路径、目录的路径、等等,
build.xml这里面是最主要的,通过引用local.properties中的参数来完成我们需求的操作。
我这里有现成的local.properties和build.xml,可以直接复制,但是要使用的话还需要自己看代码,修改local.properties中的路径,设置成自己环境下的,也可以根据自己需求修改build.xml中的标签。
2.实现自动打包
我实现的打包流程:a.解压一个zip的压缩包,b.将压缩包中的图片、视频、Json数据、icon.png复制到指定的项目目录中c、修改项目的包名和app的名称d、打包成apk
下面是我的 local.properties build.xml
Local.properties中的内容
#项目的路径
project.home=E:\\hoga_news\\holga-book
#
resource-dir=E:\\hoga_news\\holga-book\\res
#引用到第三方的工程类库
library-dir=E:\\hoga_news\\library_SlidingMenu
library-dir2=E:\\hoga_news\\FacebookSDK
#
delete-dir=E:\\hoga_news\\holga-book\\assets
#
values-dir=E:\\hoga_news\\holga-book\\res\\values
#生成的apk的名称的一部分
appName=offline-package
#
version=1.0.0
#生成的有签名的apk的路径
project.outdir=E:\\hoga_news\\offlineapks
#android.jar工具的路径
android-jar=E:\\sdk\\platforms\\android-22\\android.jar
#aapt.exe工具的路径
android-aapt=E:\\sdk\\platform-tools\\aapt.exe
#dx.bat工具的路径
android-dx=E:\\sdk\\platform-tools\\dx.bat
#sdklib.jar工具的路径
sdklib=E:\\sdk\\tools\\lib\\sdklib.jar
#jarsigner.exe工具路径
android-jarsigner=E:\\jdk\\bin\\jarsigner
#使用的key的路径
keystore-file=C:\\Users\\qingdong\\Desktop\\key\\lixianbao.key
#对齐工具路径
android-zipalign=E:\\sdk\\tools\\zipalign.exe
#生成优化后的apk的路径
success_apk_out_dir=C:\\Users\\qingdong\\Desktop\\offline_apks
#需要解压的压缩包的路径
zip-dir=C:\\Users\\qingdong\\Desktop\\ZIP
#SDK的路径
sdk.dir=E:\\sdk
build.xml 中的内容
3.命令行调用
我实现的是打包一个apk就要修改包名和项目名,所以必须知道当前项目中的包名和项目名
查看的方法:
a.查看配置文件AndroidManifest中的包名和定义的项目名
b.如果打包过apk后,使用命令行解析apk
aapt d badging apk的路径
接下来就是更换包名、项目名、打包的命令,首先进入项目目录中,运行命令
ant -f build.xml -Doldpac=旧的包名 -Dnewpac=新的包名 -Doldpro=旧的项目名-Dnewpro=新的项目名
生成的apk就会到指定的目录中。
遇到的问题:1.资源图片的格式问题 图片的格式被修改了后缀名,本来是.jpg 被修改里后缀名.png 编译报错,需要使用图片格式转换器转换图片格式,替换原来的图片。