Android自定义构建使用Ant



这4个文件(build.xml, local. xml)属性,项目。属性,proguard.cfg)在运行时自动生成:

android update project——name TestApp——target 10 .

更新project.properties

更新local.properties

新增文件。/build.xml

更新文件。/proguard.cfg

但是我想要的是"auto-gen"xml还包括以下"预编译";代码也一样,有办法做到吗?有"包含"吗?文件或模板;哪个文件可以包含这个?

  <target name="config">
  <property name="config-target-path" value="${source.dir}/com/androidengineer/antbuild"/>
  <!-- Copy the configuration file, replacing tokens in the file. -->
  <copy file="config/Config.java" todir="${config-target-path}"
        overwrite="true" encoding="utf-8">
   <filterset>
    <filter token="CONFIG.LOGGING" value="${config.logging}"/>
   </filterset>
  </copy>
 </target>

android工具生成的build.xml(至少在使用Android SDK r20时)包含这段代码:

<!--
    Import per project custom build rules if present at the root of the project.
    This is the place to put custom intermediary targets such as:
        -pre-build
        -pre-compile
        -post-compile (This is typically used for code obfuscation.
                       Compiled code location: ${out.classes.absolute.dir}
                       If this is not done in place, override ${out.dex.input.absolute.dir})
        -post-package
        -post-build
        -pre-clean
-->
<import file="custom_rules.xml" optional="true" />

所以我做什么来创建额外的目标或自定义现有的目标是创建一个custom_rules.xml文件与这些新的目标。请注意,在我的测试中,目标需要嵌套在<project>标记中,因此只需将生成的build.xml的前两行复制到custom_rules.xml,最后不要忘记结束的</project>标记。由于custom_rules.xml不会被android update覆盖,您的更改将是持久的,并且可以检入您选择的SCM工具。

也许你可以检查一下这个问题的答案:

ADT插件是否自动创建ant构建文件?

在答案中有一段话说……

或者,你可以直接从$ANDROID_HOME/tools/lib/build中复制build.xml模板。模板,然后只需更改项目名称。

修改此文件并运行命令,看看是否有效。

还可以查看本文的"自定义构建":http://www.androidengineer.com/2010/06/using-ant-to-automate-building-android.html

build.xml本身中,它告诉您如何做到这一点。请参阅文件中的以下注释:

<!--
    ***********************
    ****** IMPORTANT ******
    ***********************
    In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
    in order to avoid having your file be overridden by tools such as "android update project"
-->
<!-- version-tag: 1 -->

相关内容

  • 没有找到相关文章

最新更新