您的位置:首页 > 移动开发 > Android开发

简单的android ant 批量打包

2015-09-15 09:13 405 查看
友盟android统计是这样搞的,添加友盟sdk后每打一个平台的包都要修改AndroidManifest.xml里<meta-data
android:name="UMENG_CHANNEL" android:value="" />的value值,即平台标识,当要打很多平台包时,一个一个打非常累,还容易出错,所以研究了下ant批量打包。

以下是打友盟统计批量包的方法

1,配置JDK(略),我用的是1.7版本。

2,下载ant,我用的是1.9.6版本,下载地址http://share.weiyun.com/b1b4fbc63ec3fb7008353866ec8ad596密码是RlAG

3,配置ant环境变量,直接解压下载的ant压缩包,如D:/ant/apache-ant-1.9.6,

    点击我的电脑->属性->高级->环境变量,

      新建系统变量ANT_HOME,变量值为解压路径,

      将%ANT_HOME%\bin;%ANT_HOME%\lib添加到环境变量的PATH中,

      在cmd输入ant并回车,出现Buildfile: build.xml does not exist! Build failed则表示配置环境变量成功。

4,下载ant-contrib-1.0b3.jar扩展包,并放在Ant的lib文件夹,如D:/ant/apache-ant-1.9.6/lib,

    下载地址http://share.weiyun.com/597761d4088abca7a29c690bcf74dd57密码ZZsc

5,生成build.xml,打开cmd,定位到android
sdk里的tools中,敲击android update project -p xxx (xxx为项目工程路径),

      此时就会在项目工程目录下自动生成一个build.xml。

6,新建ant.properties,在工程目录下新建一个ant.properties的文件,根据你的keystore在ant.properties里面写签名信息,如

     key.store=C:/Users/Administrator/.android/mykey.keystore

     key.store.password=123456

     key.alias=debug.keystore

     key.alias.password=123456

7,修改build.xml,将<project
name="xxx" default="help">里的xxx修改为你的项目工程名。

8,新建custom_rules.xml,然后将以下内容复制进去,修改黄色部分为你ant-contrib-1.0b3.jar的地址

<?xml version="1.0" encoding="UTF-8"?>

<project name="custom_rules" >

    <taskdef resource="net/sf/antcontrib/antcontrib.properties" >

        <classpath>

            <pathelement location="D:/ant/apache-ant-1.9.6/lib/ant-contrib-1.0b3.jar"/>

        </classpath>

    </taskdef>

    <import file="${sdk.dir}/tools/ant/build.xml" />

    <target name="deploy" >

        <foreach

            delimiter=","

            list="${market_channels}"

            param="channel"

            target="modify_manifest" >

        </foreach>

    </target>

    <target name="modify_manifest" >

        <replaceregexp byline="false" flags="g" encoding="utf-8">

            <regexp pattern="android:name="UMENG_CHANNEL" android:value="(.*)"" />

            <substitution expression="android:name="UMENG_CHANNEL" android:value="${channel}"" />

            <fileset

                dir=""

                includes="AndroidManifest.xml" />

        </replaceregexp>

        <property

            name="out.final.file"

            location="${apk.dir}/Test_${channel}.apk" />

        <antcall target="clean" />

        <antcall target="release" />

    </target>

</project>

9,添加渠道列表,在local.properties里添加market_channels=Google,AnZhi,MuMayi,表示添加了谷歌,安智,木蚂蚁3个渠道

10,添加apk输出路径,在ant.properties下添加apk.dir=C:/Users/Administrator/Desktop,表示所有的批量包输出在桌面

11,修改AndroidManifest.xml,添加<meta-data
android:name="UMENG_CHANNEL" android:value="" /&g
9605
t;,注意必须写在一行

12,打批量包,cmd定位到工程目录下,敲击ant
deploy,出现BUILD SUCCESSFUL则表示打包完成。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android ant 友盟