From 07162980d69bc4b1b034a483d42d04153b1ef493 Mon Sep 17 00:00:00 2001 From: Christopher Orr Date: Fri, 28 Oct 2011 13:03:05 +0200 Subject: Add --rename-manifest-package option to aapt Ant task. --- anttasks/src/com/android/ant/AaptExecTask.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'anttasks') diff --git a/anttasks/src/com/android/ant/AaptExecTask.java b/anttasks/src/com/android/ant/AaptExecTask.java index c01afe2..9ca8830 100644 --- a/anttasks/src/com/android/ant/AaptExecTask.java +++ b/anttasks/src/com/android/ant/AaptExecTask.java @@ -50,6 +50,7 @@ import java.util.Set; * -0 extension<nocompress extension="">
<nocompress>nested element(s)
with attribute (String) * -F apk-fileapkfolder
outfolder
apkbasename
basenameattribute (Path)
attribute (Path) deprecated
attribute (String)
attribute (String) deprecated * -J R-file-dirrfolderattribute (Path)
-m always enabled + * --rename-manifest-package package-namemanifestpackageattribute (String) * * */ @@ -83,6 +84,7 @@ public final class AaptExecTask extends SingleDependencyTask { private int mVersionCode = 0; private String mVersionName; private String mManifest; + private String mManifestPackage; private ArrayList mResources; private String mAssets; private String mAndroidJar; @@ -211,6 +213,20 @@ public final class AaptExecTask extends SingleDependencyTask { } /** + * Sets a custom manifest package ID to be used during packaging.

+ * The manifest will be rewritten so that its package ID becomes the value given here. + * Relative class names in the manifest (e.g. ".Foo") will be rewritten to absolute names based + * on the existing package name, meaning that no code changes need to be made. + * + * @param packageName The package ID the APK should have. + */ + public void setManifestpackage(String packageName) { + if (packageName != null && packageName.length() != 0) { + mManifestPackage = packageName; + } + } + + /** * Sets the value of the "resources" attribute. * @param resources the value. * @@ -536,6 +552,12 @@ public final class AaptExecTask extends SingleDependencyTask { task.createArg().setValue(mManifest); } + // Rename manifest package + if (mManifestPackage != null) { + task.createArg().setValue("--rename-manifest-package"); + task.createArg().setValue(mManifestPackage); + } + // resources locations. if (mResources.size() > 0) { for (Path pathList : mResources) { -- cgit v1.1