Android ant строит не только релиз и отладку


Система ant по умолчанию, которую я настроил для своего Android-приложения, имеет два различных варианта: release иdebug . Я могу различать их, используя ${build.is.packaging.debug}. Я могу построить их за один шаг, выполнив либо ant release, либо ant debug.

Я хотел бы добавить третий вариант: beta . Таким образом, я могу включить определенные флаги для бета-пользователей, которые я не хочу, чтобы обычные пользователи видели, все еще оставляя мой отладочный код. Где в Муравье построения системы укажите новое цель?
1 2

1 ответ:

Если вы откроете свой проект build.xml, Вы найдете там цели release и debug. Вы должны создать новый подобный с именем beta и установить применить ваши конкретные параметры там.

Вот мой пример простого процесса сборки муравьев:

<project name="j2me_library" default="build" basedir=".">
   <property name="build.version" value="1.0.0" />
   <property name="build.name" value="library-${build.version}" />

   <property name="src" value="src" />
   <property name="lib" value="lib" />

   <property name="build" value="build" />
   <property name="classes" value="${build}/classes" />
   <property name="dist" value="${build}/dist" />


   <!--
    the "build" target is the default entry point of this script
   -->
   <target name="build" depends="package" />

   <!--
    the "clean" target will delete the build directory which contains lots of mess from the previous build
   -->
   <target name="clean">
    <delete dir="${build}" />
   </target>

   <target name="prepare" depends="clean">
    <mkdir dir="${classes}"/>
    <mkdir dir="${dist}"/>
   </target>

   <!--
    the "compile" target generates the .class files from the .java sources
   -->
   <target name="compile" depends="prepare">
    <path id="lib.files">
      <fileset dir="${lib}">
        <include name="*.jar" />
      </fileset>
    </path>

    <property name="lib.classpath" refid="lib.files" />

    <javac srcdir="${src};"
        destdir="${classes}"
        includeantruntime="false"
        classpath="${lib.classpath}"
        bootclasspath="${lib.classpath}"
        target="1.1"
        source="1.2"
    />
   </target>

   <!--
    the "package" target creates the jar file
   -->
   <target name="package" depends="compile">
    <jar destfile="${dist}/${build.name}.jar" basedir="${classes}"/>
   </target>
  </project>