android 用 ant 打包编译
2013-01-21 13:36
106 查看
ant 官方网址如:http://ant.apache.org/manual/index.html 在这里你可以获取到ant的更多的资料。
1. 下载并安装ant 工具 ,并配置好环境变量。
(1).终端敲入以下命令:fql@fql-System-Product-Name:~/桌面$ gedit ~/.bashrc
(2).修改bashrc文件 ,将其添加到path 及 classpath中
(3).在终端进行测试 ,是否安装成功 ,我安装的是1.8.3的版本
2. 编译android项目
(1).打开终端,进入项目目录,输入如下命令 $ android update project -p AntTest -t android-17
-p 指定项目的路径, -t 指定项目使用的 Android SDK api level
AntTest 此处可以填写项目的具体路径,如果在当前项目的父路径下,则直接填写AntTest
(2).编辑项目目录下生成的 build.xml ,把 project 元素的 name 属性修改为项目的名字,这个名字会影响生成的 APK 文件名。例如:TestAntBuild。
(3).编译各种类型的版本
编译 debug 版本,输入命令 $ ant debug (编译成功之后, bin/ 目录下会生成 TestAntBuild-debug.apk)
编译 release 版本需要的 keystore and alias,编辑项目目录下的 ant.properties 文件(如果没有请自行创建),
例如: key.store=/home/fql_zlyy/opt/fql.key
key.alias=fql_release
key.store.password=fql
key.alias.password=fql
由于 ant.properties 中配置的路径跟开发环境相关,因此请不要把 ant.properties 加入版本管理系统。
编译 release 版本,输入命令 $ ant release 编译成功之后, bin/ 目录下会生成 TestAntBuild-release.apk
3.自定义的编辑android项目
通常在开发android应用程序的时候,开发人员会写大量的log用来调试(Log.v Log.i Log.d Log.e Log.w),但是在发布产品的时候,我们仅仅希望
将Log.e的日志信息显示出来,而其他的log信息都不予显示,这样有助于提高程序的性能。
(1). 新建项目AntTest ,并建立 相应的类 如下代码: //Slog类可以不用管 只是针对Log进行了一些包装而已
(2).在AntTest目录下建立一个文件夹config,该文件夹下面建立类Config.java ,代码如下:
package com.example.anttest;
public class Config
{
public final static boolean SHOW_ALL_LOG = @CONFIG.FOO@;
}
注意一下此处的token,同时注意 其他地方跟(1)所建立的Config类完全一样。
(3).修改build.xml文件
提示: 在 上述 步骤2. 编译android项目 的第一步,我们可以生成build.xml文件
<property file="ant.properties" />
<target name="-pre-compile">
<copy file="config/Config.java" todir="${source.dir}/com/example/anttest" overwrite="true" encoding="utf-8">
<filterset>
<filter token="CONFIG.FOO" value="${config.foo}"/>
</filterset>
</copy>
</target>
在 <property file="ant.properties" /> 下添加以上代码: 主要意思是:将拷贝java模板类(提示:该类是在以上步骤 (2).在AntTest目录下建立一个文件夹config,该文件夹下面建立类Config.java 所建立的java文件)到 AntTest/src/com.example.anttest/下面去,这样将会覆盖掉之前在
[b]com.example.anttest 包下面建立的Config.java文件。同时会 将 @CONFIG.FOO@; 替换成 在ant.properties下的config.foo下面的所表示的值。这样就会在程序运行时,动态的去去的ant.properties 下所配置的值了。[/b]
ant.properties的内容如下:
key.store=/home/fql/fql_zlyy/fql_key.key
key.alias=fql_release
key.store.password=fql
key.alias.password=fql
config.foo=false
(4).配置完成之后,直接敲入命令 :
fql@fql-System-Product-Name:~/桌面$ ant release
就可以了。
如有问题,欢迎大家留言!!!!
4. 参考资料
Using Ant to Automate Building Android Applications
Building and Running from the Command Line
1. 下载并安装ant 工具 ,并配置好环境变量。
(1).终端敲入以下命令:fql@fql-System-Product-Name:~/桌面$ gedit ~/.bashrc
(2).修改bashrc文件 ,将其添加到path 及 classpath中
export ANT_HOME=~/fql_zlyy/tools/apache-ant-1.8.3 export PATH=$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools:$JAVA_HOME/bin:$ANT_HOME/bin:$PATH export CLASSPATH=$ANDROID_SDK/platform-tools/lib:$ANDROID_SDK/tools/lib:$JAVA_HOME/lib:$ANT_HOME/lib:$CLASSPATH
(3).在终端进行测试 ,是否安装成功 ,我安装的是1.8.3的版本
fql@fql-System-Product-Name:~/桌面$ ant -version Apache Ant(TM) version 1.8.3 compiled on February 26 2012
2. 编译android项目
(1).打开终端,进入项目目录,输入如下命令 $ android update project -p AntTest -t android-17
-p 指定项目的路径, -t 指定项目使用的 Android SDK api level
AntTest 此处可以填写项目的具体路径,如果在当前项目的父路径下,则直接填写AntTest
(2).编辑项目目录下生成的 build.xml ,把 project 元素的 name 属性修改为项目的名字,这个名字会影响生成的 APK 文件名。例如:TestAntBuild。
(3).编译各种类型的版本
编译 debug 版本,输入命令 $ ant debug (编译成功之后, bin/ 目录下会生成 TestAntBuild-debug.apk)
编译 release 版本需要的 keystore and alias,编辑项目目录下的 ant.properties 文件(如果没有请自行创建),
例如: key.store=/home/fql_zlyy/opt/fql.key
key.alias=fql_release
key.store.password=fql
key.alias.password=fql
由于 ant.properties 中配置的路径跟开发环境相关,因此请不要把 ant.properties 加入版本管理系统。
编译 release 版本,输入命令 $ ant release 编译成功之后, bin/ 目录下会生成 TestAntBuild-release.apk
3.自定义的编辑android项目
通常在开发android应用程序的时候,开发人员会写大量的log用来调试(Log.v Log.i Log.d Log.e Log.w),但是在发布产品的时候,我们仅仅希望
将Log.e的日志信息显示出来,而其他的log信息都不予显示,这样有助于提高程序的性能。
(1). 新建项目AntTest ,并建立 相应的类 如下代码: //Slog类可以不用管 只是针对Log进行了一些包装而已
package com.example.anttest; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Slog.setTag("MainActivity"); for (int i = 0; i < 10; i++) { Slog.i("the hope is everyever"); } Slog.e("Error Test Successfully"); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }
package com.example.anttest; public class Config { public final static boolean SHOW_ALL_LOG = false; }
(2).在AntTest目录下建立一个文件夹config,该文件夹下面建立类Config.java ,代码如下:
package com.example.anttest;
public class Config
{
public final static boolean SHOW_ALL_LOG = @CONFIG.FOO@;
}
注意一下此处的token,同时注意 其他地方跟(1)所建立的Config类完全一样。
(3).修改build.xml文件
提示: 在 上述 步骤2. 编译android项目 的第一步,我们可以生成build.xml文件
<property file="ant.properties" />
<target name="-pre-compile">
<copy file="config/Config.java" todir="${source.dir}/com/example/anttest" overwrite="true" encoding="utf-8">
<filterset>
<filter token="CONFIG.FOO" value="${config.foo}"/>
</filterset>
</copy>
</target>
在 <property file="ant.properties" /> 下添加以上代码: 主要意思是:将拷贝java模板类(提示:该类是在以上步骤 (2).在AntTest目录下建立一个文件夹config,该文件夹下面建立类Config.java 所建立的java文件)到 AntTest/src/com.example.anttest/下面去,这样将会覆盖掉之前在
[b]com.example.anttest 包下面建立的Config.java文件。同时会 将 @CONFIG.FOO@; 替换成 在ant.properties下的config.foo下面的所表示的值。这样就会在程序运行时,动态的去去的ant.properties 下所配置的值了。[/b]
ant.properties的内容如下:
key.store=/home/fql/fql_zlyy/fql_key.key
key.alias=fql_release
key.store.password=fql
key.alias.password=fql
config.foo=false
(4).配置完成之后,直接敲入命令 :
fql@fql-System-Product-Name:~/桌面$ ant release
就可以了。
如有问题,欢迎大家留言!!!!
4. 参考资料
Using Ant to Automate Building Android Applications
Building and Running from the Command Line
相关文章推荐
- 通过ant脚本编译打包android工程
- Android使用ant对项目进行编译签名优化打包
- Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式
- 《Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式》
- 通过Ant将Android project编译打包成APK文件并安装到手机
- Ant自动编译打包android项目
- Android_Ant_多渠道打包/一键自动编译 ——Mac lion 10.8.2下
- Android ant 命令行手动编译打包详解
- Ant自动编译打包&发布 android项目
- android ant 自动编译打包
- Android使用ant对项目进行编译签名优化打包
- Ant自动编译打包&发布 android项目
- Ant自动编译打包&发布 android项目
- (转)通过ant脚本,编译打包android工程
- windows下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件
- Ant自动编译打包&发布 android项目
- Android 自动化发布—采用Ant打包的完美实现:编译、合并、签名、混淆、优化、自动运行
- Windows系统下Ant自动编译打包并签名Android应用——实践篇
- 项目androidAnt编译打包Android项目
- [Android] mac上申请签名及使用ant自动编译打包签名APK