| Index: build/android/ant/apk-package.xml
|
| diff --git a/build/android/ant/apk-package.xml b/build/android/ant/apk-package.xml
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ca5187874c385846b36544a933d396cb7b2fc1f2
|
| --- /dev/null
|
| +++ b/build/android/ant/apk-package.xml
|
| @@ -0,0 +1,201 @@
|
| +<?xml version="1.0" encoding="UTF-8"?>
|
| +<!--
|
| + Copyright (C) 2005-2008 The Android Open Source Project
|
| +
|
| + Licensed under the Apache License, Version 2.0 (the "License");
|
| + you may not use this file except in compliance with the License.
|
| + You may obtain a copy of the License at
|
| +
|
| + http://www.apache.org/licenses/LICENSE-2.0
|
| +
|
| + Unless required by applicable law or agreed to in writing, software
|
| + distributed under the License is distributed on an "AS IS" BASIS,
|
| + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| + See the License for the specific language governing permissions and
|
| + limitations under the License.
|
| +-->
|
| +
|
| +<project default="-do-sign">
|
| + <property name="verbose" value="false" />
|
| + <property name="out.dir" location="${OUT_DIR}" />
|
| + <!-- Output directories -->
|
| + <property name="out.dir" value="bin" />
|
| + <property name="out.absolute.dir" location="${out.dir}" />
|
| + <property name="out.res.absolute.dir" location="${out.dir}/res" />
|
| + <property name="out.manifest.abs.file" location="${out.dir}/AndroidManifest.xml" />
|
| +
|
| + <!-- tools location -->
|
| + <property name="sdk.dir" location="${ANDROID_SDK_ROOT}"/>
|
| + <property name="target" value="android-${ANDROID_SDK_VERSION}"/>
|
| + <property name="project.target.android.jar" location="${ANDROID_SDK_JAR}" />
|
| + <property name="android.tools.dir" location="${sdk.dir}/tools" />
|
| + <property name="android.platform.tools.dir" location="${sdk.dir}/platform-tools" />
|
| +
|
| + <!-- jar file from where the tasks are loaded -->
|
| + <path id="android.antlibs">
|
| + <pathelement path="${sdk.dir}/tools/lib/anttasks.jar" />
|
| + </path>
|
| +
|
| + <!-- Custom tasks -->
|
| + <taskdef resource="anttasks.properties" classpathref="android.antlibs" />
|
| +
|
| + <condition property="build.target" value="release" else="debug">
|
| + <equals arg1="${CONFIGURATION_NAME}" arg2="Release" />
|
| + </condition>
|
| + <condition property="build.is.packaging.debug" value="true" else="false">
|
| + <equals arg1="build.target" arg2="debug" />
|
| + </condition>
|
| +
|
| +
|
| + <!-- Set the output directory for the final apk to the ${apks.dir}. -->
|
| + <property name="out.final.file" location="${APKS_DIR}/${APK_NAME}.apk" />
|
| +
|
| + <!-- Disables automatic signing. -->
|
| + <property name="build.is.signing.debug" value="false"/>
|
| +
|
| + <!-- SDK tools assume that out.packaged.file is signed and name it "...-unaligned" -->
|
| + <property name="out.packaged.file" value="${out.dir}/${APK_NAME}-unsigned.apk" />
|
| + <property name="out.unaligned.file" value="${out.dir}/${APK_NAME}-unaligned.apk" />
|
| +
|
| + <property name="resource.dir" value="${RESOURCE_DIR}"/>
|
| + <property name="resource.absolute.dir" location="${resource.dir}"/>
|
| +
|
| + <property name="asset.dir" value="${ASSET_DIR}" />
|
| + <property name="asset.absolute.dir" location="${asset.dir}" />
|
| +
|
| + <property name="native.libs.absolute.dir" location="${out.dir}/libs" />
|
| +
|
| + <property name="aapt" location="${android.platform.tools.dir}/aapt" />
|
| +
|
| + <target name="-crunch">
|
| + <!-- Updates the pre-processed PNG cache -->
|
| + <exec executable="${aapt}" taskName="crunch">
|
| + <arg value="crunch" />
|
| + <arg value="-v" />
|
| + <arg value="-S" />
|
| + <arg path="${resource.absolute.dir}" />
|
| + <arg value="-C" />
|
| + <arg path="${out.res.absolute.dir}" />
|
| + </exec>
|
| + </target>
|
| +
|
| + <property name="version.code" value="${APP_MANIFEST_VERSION_CODE}"/>
|
| + <property name="version.name" value="${APP_MANIFEST_VERSION_NAME}"/>
|
| +
|
| + <property name="aapt.resource.filter" value="" />
|
| + <!-- 'aapt.ignore.assets' is the list of file patterns to ignore under /res and /assets.
|
| + Default is "!.svn:!.git:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"
|
| +
|
| + Overall patterns syntax is:
|
| + [!][<dir>|<file>][*suffix-match|prefix-match*|full-match]:more:patterns...
|
| +
|
| + - The first character flag ! avoids printing a warning.
|
| + - Pattern can have the flag "<dir>" to match only directories
|
| + or "<file>" to match only files. Default is to match both.
|
| + - Match is not case-sensitive.
|
| + -->
|
| + <property name="aapt.ignore.assets" value="" />
|
| +
|
| + <!--
|
| + Include additional resource folders in the apk, e.g. content/.../res. We
|
| + list the res folders in project.library.res.folder.path and the
|
| + corresponding java packages in project.library.packages, which must be
|
| + semicolon-delimited while ADDITIONAL_RES_PACKAGES is space-delimited, hence
|
| + the javascript task.
|
| + -->
|
| + <path id="project.library.res.folder.path">
|
| + <filelist files="${ADDITIONAL_RES_DIRS}"/>
|
| + </path>
|
| + <path id="project.library.bin.r.file.path">
|
| + <filelist files="${ADDITIONAL_R_TEXT_FILES}"/>
|
| + </path>
|
| + <script language="javascript">
|
| + var before = project.getProperty("ADDITIONAL_RES_PACKAGES");
|
| + project.setProperty("project.library.packages", before.replaceAll(" ", ";"));
|
| + </script>
|
| +
|
| + <property name="build.packaging.nocrunch" value="true" />
|
| +
|
| + <!-- Intermediate files -->
|
| + <property name="resource.package.file.name" value="${APK_NAME}.ap_" />
|
| +
|
| + <target name="-package-resources" depends="-crunch">
|
| + <aapt
|
| + executable="${aapt}"
|
| + command="package"
|
| + versioncode="${version.code}"
|
| + versionname="${version.name}"
|
| + debug="${build.is.packaging.debug}"
|
| + manifest="${out.manifest.abs.file}"
|
| + assets="${asset.absolute.dir}"
|
| + androidjar="${project.target.android.jar}"
|
| + apkfolder="${out.absolute.dir}"
|
| + nocrunch="${build.packaging.nocrunch}"
|
| + resourcefilename="${resource.package.file.name}"
|
| + resourcefilter="${aapt.resource.filter}"
|
| + libraryResFolderPathRefid="project.library.res.folder.path"
|
| + libraryPackagesRefid="project.library.packages"
|
| + libraryRFileRefid="project.library.bin.r.file.path"
|
| + previousBuildType=""
|
| + buildType="${build.target}"
|
| + ignoreAssets="${aapt.ignore.assets}">
|
| + <res path="${out.res.absolute.dir}" />
|
| + <res path="${resource.absolute.dir}" />
|
| + <!-- <nocompress /> forces no compression on any files in assets or res/raw -->
|
| + <!-- <nocompress extension="xml" /> forces no compression on specific file extensions in assets and res/raw -->
|
| + </aapt>
|
| + </target>
|
| +
|
| + <property name="dex.file.name" value="classes.dex" />
|
| + <property name="intermediate.dex.file" location="${out.absolute.dir}/${dex.file.name}" />
|
| + <property name="source.dir" value="${SOURCE_DIR}" />
|
| + <property name="source.absolute.dir" location="${source.dir}" />
|
| +
|
| +
|
| + <!-- Packages the application. -->
|
| + <target name="-package" depends="-package-resources">
|
| + <apkbuilder
|
| + outfolder="${out.absolute.dir}"
|
| + resourcefile="${resource.package.file.name}"
|
| + apkfilepath="${out.packaged.file}"
|
| + debugpackaging="${build.is.packaging.debug}"
|
| + debugsigning="${build.is.signing.debug}"
|
| + verbose="${verbose}"
|
| + hascode="true"
|
| + previousBuildType="/"
|
| + buildType="${build.is.packaging.debug}/${build.is.signing.debug}">
|
| + <dex path="${intermediate.dex.file}"/>
|
| + <sourcefolder path="${source.absolute.dir}"/>
|
| + <nativefolder path="${native.libs.absolute.dir}" />
|
| + </apkbuilder>
|
| + </target>
|
| +
|
| +
|
| +
|
| + <property name="key.store" value="${KEYSTORE_PATH}"/>
|
| + <property name="key.store.password" value="chromium"/>
|
| + <property name="key.alias" value="chromiumdebugkey"/>
|
| + <property name="key.alias.password" value="chromium"/>
|
| + <property name="zipalign" location="${android.tools.dir}/zipalign" />
|
| +
|
| + <!-- Signs and zipaligns the apk. -->
|
| + <target name="-do-sign" depends="-package">
|
| + <sequential>
|
| + <echo level="info">Signing final apk...</echo>
|
| + <signapk
|
| + input="${out.packaged.file}"
|
| + output="${out.unaligned.file}"
|
| + keystore="${key.store}"
|
| + storepass="${key.store.password}"
|
| + alias="${key.alias}"
|
| + keypass="${key.alias.password}" />
|
| +
|
| + <zipalign
|
| + executable="${zipalign}"
|
| + input="${out.unaligned.file}"
|
| + output="${out.final.file}"
|
| + verbose="${verbose}" />
|
| + <echo level="info">Release Package: ${out.final.file}</echo>
|
| + </sequential>
|
| + </target>
|
| +</project>
|
|
|