Android Ant批量打包

一、配置Ant环境变量

JAVA_HOME=/software/jdk1.6.0_24
ANT_HOME=/software/apache-ant-1.9.2
Android_Home=/software/android-sdk-linux
export JAVA_HOME ANT_HOME Android_Home

PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$ANDROID_HOME/tools$Android_Home/tools/proguard/bin:$/software/decompile/dex2jar-0.0.9.13:$PATH
export PATH

CLASSPATH=/software/apache-ant-1.9.2/lib
export CLASSPATH

二、copy以下三个文件到工程根目录

文件一:ant.properties
out.absolute.dir=输出apk目录
ant.project.name=工程名字
gos.path=输出mapping文件等编译相关目录
key.alias=alias名称
java.encoding=utf-8
key.store.password=密码
application.package=cn.ibm.moa.android.cf
key.store=keystore目录
key.alias.password=alias密码
market_channels=a01,a02,a03(渠道名,多渠道以逗号隔开)
app_version=应用版本

文件二:build.xml(红色部分需要根据自己的情况修改)
<?xml version="1.0" encoding="UTF-8"?>
<project
    name="工程名"
    default="help" >

    <property file="local.properties" />

    <property file="ant.properties" />

    <loadproperties srcFile="project.properties" />

    <!-- quick check on sdk.dir -->

    <fail
        message="sdk.dir is missing. Make sure to generate local.properties using ‘android update project‘ or to inject it through an env var"
        unless="sdk.dir" />

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

        <classpath>
        <!-- ant目录下的lib -->
            <pathelement location="/software/apache-ant-1.9.2/lib/ant-contrib-1.0b3.jar" />
        </classpath>
    </taskdef>

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

    <import
        file="custom_rules.xml"
        optional="true" />

    <target name="clean_bin_gen" >

        <echo>
Cleaning the project...
        </echo>

        <delete dir="${report.dir}" />

        <delete dir="${build.dir}" />

        <delete
            includeemptydirs="true"
            verbose="true" >

            <fileset
                dir="bin"
                includes="**/*" >
            </fileset>
        </delete>

        <delete
            includeemptydirs="true"
            verbose="true" >

            <fileset
                dir="gen"
                includes="**/*" >
            </fileset>
        </delete>
    </target>

    <target
        name="deploy"
        depends="clean" >

        <foreach
            delimiter=","
            list="${market_channels}"
            param="channel"
            target="modify_manifest" >
        </foreach>
    </target>

    <target name="modify_manifest" >

        <replaceregexp byline="false" >

            <regexp pattern="android:debuggable="(.*)"" />

            <substitution expression="" />

            <fileset
                dir=""
                includes="AndroidManifest.xml" />
        </replaceregexp>

        <replaceregexp
            byline="false"
            flags="g" >

            <regexp pattern="android:name="APP_CHANNEL" *(\r\n)? *android:value="(.*)"" />

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

            <fileset
                dir=""
                includes="AndroidManifest.xml" />
        </replaceregexp>

        <replaceregexp
            byline="false"
            flags="g" >

            <regexp pattern="android:name="APP_CHANNEL01" *(\r\n)? *android:value="(.*)"" />

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

            <fileset
                dir=""
                includes="AndroidManifest.xml" />
        </replaceregexp>

        <antcall target="release" />

        <copy tofile="${gos.path}/应用名称_${channel}.apk" >

            <fileset
                dir="${out.absolute.dir}/"
                includes="应用名称-release.apk" />
        </copy>

        <echo message="-------------------------------------------------------" />
    </target>

</project>

文件三:local.properties
#sdk根目录
sdk.dir=/software/android-sdk-linux

三、在终端中切换到工程根目录下执行命令:ant deploy  

打包成功后会显示以下提示

BUILD SUCCESSFUL
Total time: 1 minute 58 seconds

  

时间: 2024-10-01 08:00:00

Android Ant批量打包的相关文章

cocos2dx Android 使用ant 批量打包

参考文章: 例子:http://www.2cto.com/kf/201305/208139.html http://blog.csdn.net/ljb_blog/article/details/12709983 eclipse 如何支持ant:http://www.cnblogs.com/sw926/p/3238512.html 环境介绍: 引擎:cocos2dx2.2.2 开发平台:mac jdk 1.7 注:参考了以上文章,最后发现打包也不用自己下ant,也不用命令行, 而是设置 <proj

使用Ant批量打包Android应用完全指南

本文章由Socks完成,博客地址:http://blog.csdn.net/zhaokaiqiang1992 转载请说明! 折腾了一下午,百度了一下午,终于实现了使用Ant对Android应用的批量打包,也算是了却了我的一桩心事.虽然网上的这部分教程也有,但是感觉写的不是详细.更为重要的是,各种方法之间的差异比较大,对于新手来说,各种方法之间的选择是极为痛苦的,一个方法一个方法的去实验,是很浪费时间的.因此,我想给大家提供一套完整的,详细的Ant打包Android应用的教程,方便大家的学习和以后

【Android开发经验】使用Ant批量打包Android应用全然指南

本文章由Socks完毕.博客地址:http://blog.csdn.net/zhaokaiqiang1992 转载请说明. 折腾了一下午.百度了一下午,最终实现了使用Ant对Android应用的批量打包,也算是了却了我的一桩心事.尽管网上的这部分教程也有,可是感觉写的不是具体. 更为重要的是.各种方法之间的差异比較大.对于新手来说.各种方法之间的选择是极为痛苦的,一个方法一个方法的去实验,是非常浪费时间的. 因此,我想给大家提供一套完整的,具体的Ant打包Android应用的教程,方便大家的学习

Android采用Ant批量打包

Ant批量打包的目的是:Android应用市场繁杂,有时候可能需要统计你的app在各个渠道的下载量等信息,而统计各个渠道时是要做区分的,你需要在项目的配置文件中添加数据元,来标示我们的应用是在哪个渠道上发布的. 1.准备工作: 在正式开始Ant打包前,需要下载和配置Ant环境,下载地址:ant下载 下载后解压安装包,解压后的目录如下: 接下来就是配置Ant的环境变量: 创建ANT_HOME变量,填入路径:E:\apache-ant-1.9.7-bin\apache-ant-1.9.7 然后在Pa

Android Ant 批量多渠道打包实例

Android Ant 批量多渠道打包实例 关于批量打包,无需多言,这是每个国内Android开发者必须面对的一个问题. 下面,我就以开源项目「知乎小报」为例,详细说明如何使用ANT实现批量打渠道包. 1 Ant 安装 下载ANT 请前往 http://ant.apache.org 下载. 配置环境变量 设置环境变量后,在命令行下测试ant命令,如果出现以下内容,则说明配置成功: cundongdeMacBook-Pro:~ cundong$ ant Buildfile: build.xml d

androd Eclipse Ant 批量打包

androd Eclipse Ant 批量打包的相关网址  有全部的教程  如遇到打包的问题  可从以下的链接中查找答案  谢谢这些前辈分享的资源  在此引用表示感谢 http://blog.csdn.net/mxthing/article/details/45716671http://www.android100.org/html/201509/14/181502.html http://ant.apache.org/bindownload.cgi http://blog.csdn.net/z

Android多渠道批量打包

如若感觉排版不舒服,请移步Android多渠道批量打包 1.为什么要进行多渠道打包? 安卓应用商店(一个商店也叫做一个渠道,如豌豆荚,360手机助手,应用宝)众多,大大小小几百个,每当我们发新版本时,需要将Android客户端分发到各个应用市场,为了统计这些市场的效果(下载量.活跃数等),需要有一种方法来唯一标识它们,所以才有了多渠道打包. 2.如何统计各个渠道的下载量.活跃数? 现在有比较成熟的第三方应用帮我们实现统计功能(比如友盟),统计的本质就是收集用户信息传输到后台,后台生成报表,帮助我

android Ant批打包学习(二)---生成有签名且混淆的apk包

本篇文章预期目标:                 生成有签名apk文件 详细步骤如下: 1  定义文件 两个文件 1.1  名字:local.properties 内容:SDK的路径(例如:sdk.dir=/Users/lincoln/Android/sdk) 1.2 名字:ant.properties 内容: source.dir=src out.dir=bin proguard.config=proguard.cfg   (添加混淆,必须保证proguard.cfg 文件存在) key.s

android Ant批打包学习(一)

1  Apache Ant安装.配置环境变量 1.1 下载地址: http://ant.apache.org/ 1.2 环境变量配置: 把解压缩后的文件夹中/bin的全路径添加到PATH中 2  命令行下创建Android新工程 即:   android create project -k com.ant.test -n antTest -a AntTestActivity -t 7 -p /Users/lincoln/Desktop/antTest 详解: android create pro