Android Ant打包及其环境变量配置

之前打包项目使用蓝贝壳打包,或者用Eclipse自带的环境打包,或者直接扔给第三方给别人打包(这里是指的爱加密打包)。接下来老于就带你们走进ant打包的时代。

每次完成一个应用后。就要上市场。上市场呢就要有很多的渠道。有很多的渠道呢。意味着要打很多个渠道包。我哩个去。

记得有个项目。100多个渠道。打到手软。回去飞机打不起来了。android就是这么屌丝。不像ios高富帅一样。就打几个而已。以前一直认为ant自动渠道打包很复杂。其实说难也不难。说复杂也不复杂。最要就是配置环境问题。环境配好了。生成的build.xml中的配置弄好了。就基本可以打包了。一。首先呢要把电脑的java环境配置到环境变量中PATH中。不懂的人可以参考转帖二,把android的SDK也配置到环境变量中PATH中不懂的人可以参考转帖三。下载ant环境包。地址在下载。记得也配置到环境变量中PATH,我的地址是这样的D:\apache-ant-1.9.2\bin;具体大家自己设置,配置成功的话点击运行。输入cmd。输入ant -version回车表示配置成功了。四,使用ant,对项目生成build.xml文件具体可以查看转帖。如果说命令打不出来。或者提示找不到的话。说明Android SDK环境配置有问题。要去配置好。网上查找下五,如果在项目中生成出build.xml等文件时候。就可以进行下一步的配置了如下图目录ant.properties文件是我们等下要自己创建的文件。是稍后给大家介绍。另外两个文件是build.xml和local.properties关于ant打包,大家可以先看看这两篇文章,转帖六,,接下来介绍下ant.properties的内容吧其中的proguard.config=proguard.cfg是混淆文件。相信大家都懂得自己定义个混淆文件吧。key.store=E:\\androidkey.keystore是签名文件的绝对地址。我这里是window系统。所以这样写。lkey.alias=androidkevin.keystore签名文件的别名。如果忘了话。可以用eclipse打包时候最后一次输入密码时候。有个Alias的就是你的别名了。key.store.password=123455签名密码key.alias.password=123455签名密码market_channels打包的渠道列表。用逗号隔开。不懂得话前面两篇都有说明以下我把我的build.xml文件的内容晒出来:<?xml version="1.0" encoding="UTF-8"?><project name="BABYRECORD" default="release"><property file="local.properties" /><property file="ant.properties" /><property environment="env" /><condition property="sdk.dir" value="${env.ANDROID_HOME}"><isset property="env.ANDROID_HOME" /></condition> <property name="outdir" value="bin" /><property name="outdir-classes" value="${outdir}/classes" /><property name="proguard-home" value="D:\\proguard4.2\\lib\\" /><property name="sdk-folder" value="D:\android-sdk_r16-windows\android-sdk_r16-windows\android-sdk-windows" /><property name="android-jar" value="${sdk-folder}\platforms\android-3\android.jar" /><loadproperties srcFile="project.properties" /><failmessage="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."unless="sdk.dir"/><import file="custom_rules.xml" optional="true" /><import file="${sdk.dir}/tools/ant/build.xml" /><property name="out.unaligned.dir" value="F:\BABYRECORD_${app_version}\&; /><mkdir dir="${out.unaligned.dir}" /><target name="modify_update_file"><echo>*********************** make channel ${channel}</echo><replaceregexp file="AndroidManifest.xml"match='channel'replace='${channel}'byline="false"encoding="utf-8"/><property name="out.unaligned.file" location="${out.unaligned.dir}\babyrecord_${app_version}_release_build${app_date}_${channel}.apk"/><antcall target="release" /></target><target name="make_one_channels" depends="savemanifest,modify_update_file,release,replacemanifest,deletebin" description="description"></target><target name="replacemanifest"><echo>*********************** replacemanifest</echo><delete file="${basedir}\AndroidManifest.xml"/><copy file="..\temp\build\META-INF\AndroidManifest.xml" todir="${basedir}" encoding="utf-8"/></target><target name="savemanifest"><echo>*********************** savemanifest</echo><copy file="${basedir}\AndroidManifest.xml" todir="..\temp\build\META-INF" encoding="utf-8" /></target><target name="deletebin"><delete dir="${basedir}\bin\*" /></target><taskdef name="foreach" classname="net.sf.antcontrib.logic.ForEach" classpath="D:\android-sdk_r16-windows\android-sdk_r16-windows\android-sdk-windows\tools\ant-contrib-1.0b3.jar" /><target name="make_channels"><foreach target="make_one_channels" list="${market_channels}" delimiter="," param="channel"></foreach></target></project>大家看到里面的变量env.ANDROID_HOME没有。这里是用了我们之前java在电脑环境变量的配置名称。所以大家在配置时候。要先new一个。取名为ANDROID_HOME配置到是android SDK的地址其他配置的话。大家一看就了然了。有些是自己的的文件夹地址。有些是配置到ant.properties中。如果大家遇到报错的话。可以留言回复我。我会尽量帮助大家解答

快乐不是因为得到的多而是因为计较的少!

Android Ant打包及其环境变量配置

相关文章:

你感兴趣的文章:

标签云: