summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorRicardo Cerqueira <github@cerqueira.org>2012-05-01 00:42:32 +0100
committerRicardo Cerqueira <github@cerqueira.org>2012-05-04 00:35:28 +0100
commit5b98f48ce8a98f7ecd74559088a755ca4df96bd2 (patch)
treeaee5867ff4f0571f7e33197ddc97a4affe0daf40 /tools
parent83f5fc03a67685e762f47a1b9b913b8bc04896d0 (diff)
parent44ffc93b4d3ab81bf4df569839e409bae0c8695a (diff)
downloadframeworks_base-5b98f48ce8a98f7ecd74559088a755ca4df96bd2.zip
frameworks_base-5b98f48ce8a98f7ecd74559088a755ca4df96bd2.tar.gz
frameworks_base-5b98f48ce8a98f7ecd74559088a755ca4df96bd2.tar.bz2
Merge remote-tracking branch 'tmo/themes-2.3.1_r1' into themes-4.0
* Adapt to ICS API changes * Remove part of idmap due to conflicts * Restructure statusbar code * Fix issues with PowerWidget on phones to avoid the CM7 hackish restart of SystemUI * Add reinflation to properly redo status icons on tablets Conflicts: core/java/android/app/ActivityManager.java core/java/android/app/ActivityThread.java core/java/android/app/ContextImpl.java core/java/android/content/pm/ApplicationInfo.java core/java/android/content/pm/IPackageManager.aidl core/java/android/content/pm/PackageParser.java core/java/android/content/res/AssetManager.java core/java/android/content/res/CompatibilityInfo.java core/java/android/content/res/Configuration.java core/java/android/content/res/Resources.java core/java/com/android/internal/os/ZygoteInit.java core/jni/AndroidRuntime.cpp core/jni/android_util_AssetManager.cpp core/res/AndroidManifest.xml data/etc/platform.xml include/utils/AssetManager.h include/utils/ResourceTypes.h libs/utils/Android.mk libs/utils/AssetManager.cpp libs/utils/ResourceTypes.cpp media/java/android/media/RingtoneManager.java packages/SystemUI/res/layout/status_bar.xml packages/SystemUI/src/com/android/systemui/statusbar/NotificationData.java packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java packages/SystemUI/src/com/android/systemui/statusbar/StatusBarService.java packages/SystemUI/src/com/android/systemui/statusbar/StatusBarView.java packages/SystemUI/src/com/android/systemui/statusbar/TrackingView.java policy/src/com/android/internal/policy/impl/PhoneWindowManager.java services/java/com/android/server/PackageManagerService.java services/java/com/android/server/SystemServer.java services/java/com/android/server/am/ActivityManagerService.java test-runner/src/android/test/mock/MockPackageManager.java Change-Id: Icabcd2c7b07dcbf174789b34f960360b87d7f27a
Diffstat (limited to 'tools')
-rw-r--r--tools/aapt/Bundle.h6
-rw-r--r--tools/aapt/Main.cpp14
-rw-r--r--tools/aapt/ResourceTable.cpp12
3 files changed, 28 insertions, 4 deletions
diff --git a/tools/aapt/Bundle.h b/tools/aapt/Bundle.h
index 2d1060b..7ea277a 100644
--- a/tools/aapt/Bundle.h
+++ b/tools/aapt/Bundle.h
@@ -1,5 +1,6 @@
//
// Copyright 2006 The Android Open Source Project
+// This code has been modified. Portions copyright (C) 2010, T-Mobile USA, Inc.
//
// State bundle. Used to pass around stuff like command-line args.
//
@@ -36,7 +37,7 @@ public:
Bundle(void)
: mCmd(kCommandUnknown), mVerbose(false), mAndroidList(false),
mForce(false), mGrayscaleTolerance(0), mMakePackageDirs(false),
- mUpdate(false), mExtending(false),
+ mUpdate(false), mExtending(false), mExtendedPackageId(0),
mRequireLocalization(false), mPseudolocalize(false),
mWantUTF16(false), mValues(false),
mCompressionMethod(0), mOutputAPKFile(NULL),
@@ -78,6 +79,8 @@ public:
void setUpdate(bool val) { mUpdate = val; }
bool getExtending(void) const { return mExtending; }
void setExtending(bool val) { mExtending = val; }
+ int getExtendedPackageId(void) const { return mExtendedPackageId; }
+ void setExtendedPackageId(int val) { mExtendedPackageId = val; }
bool getRequireLocalization(void) const { return mRequireLocalization; }
void setRequireLocalization(bool val) { mRequireLocalization = val; }
bool getPseudolocalize(void) const { return mPseudolocalize; }
@@ -226,6 +229,7 @@ private:
bool mMakePackageDirs;
bool mUpdate;
bool mExtending;
+ int mExtendedPackageId;
bool mRequireLocalization;
bool mPseudolocalize;
bool mWantUTF16;
diff --git a/tools/aapt/Main.cpp b/tools/aapt/Main.cpp
index 50c828d..77d5dd6 100644
--- a/tools/aapt/Main.cpp
+++ b/tools/aapt/Main.cpp
@@ -1,5 +1,6 @@
//
// Copyright 2006 The Android Open Source Project
+// This code has been modified. Portions copyright (C) 2010, T-Mobile USA, Inc.
//
// Android Asset Packaging Tool main entry point.
//
@@ -14,6 +15,7 @@
#include <stdlib.h>
#include <getopt.h>
#include <assert.h>
+#include <ctype.h>
using namespace android;
@@ -55,7 +57,7 @@ void usage(void)
" xmltree Print the compiled xmls in the given assets.\n"
" xmlstrings Print the strings of the given compiled xml assets.\n\n", gProgName);
fprintf(stderr,
- " %s p[ackage] [-d][-f][-m][-u][-v][-x][-z][-M AndroidManifest.xml] \\\n"
+ " %s p[ackage] [-d][-f][-m][-u][-v][-x[ extending-resource-id]][-z][-M AndroidManifest.xml] \\\n"
" [-0 extension [-0 extension ...]] [-g tolerance] [-j jarfile] \\\n"
" [--debug-mode] [--min-sdk-version VAL] [--target-sdk-version VAL] \\\n"
" [--app-version VAL] [--app-version-name TEXT] [--custom-package VAL] \\\n"
@@ -116,7 +118,7 @@ void usage(void)
#endif
" -u update existing packages (add new, replace older, remove deleted files)\n"
" -v verbose output\n"
- " -x create extending (non-application) resource IDs\n"
+ " -x either create or assign (if specified) extending (non-application) resource IDs\n"
" -z require localization of resource attributes marked with\n"
" localization=\"suggested\"\n"
" -A additional directory in which to find raw asset files\n"
@@ -305,6 +307,14 @@ int main(int argc, char* const argv[])
break;
case 'x':
bundle.setExtending(true);
+ argc--;
+ argv++;
+ if (!argc || !isdigit(argv[0][0])) {
+ argc++;
+ argv--;
+ } else {
+ bundle.setExtendedPackageId(atoi(argv[0]));
+ }
break;
case 'z':
bundle.setRequireLocalization(true);
diff --git a/tools/aapt/ResourceTable.cpp b/tools/aapt/ResourceTable.cpp
index fdb39ca..df117db 100644
--- a/tools/aapt/ResourceTable.cpp
+++ b/tools/aapt/ResourceTable.cpp
@@ -1,5 +1,6 @@
//
// Copyright 2006 The Android Open Source Project
+// This code has been modified. Portions copyright (C) 2010, T-Mobile USA, Inc.
//
// Build resource files from raw assets.
//
@@ -3620,7 +3621,16 @@ sp<ResourceTable::Package> ResourceTable::getPackage(const String16& package)
mHaveAppPackage = true;
p = new Package(package, 127);
} else {
- p = new Package(package, mNextPackageId);
+ int extendedPackageId = mBundle->getExtendedPackageId();
+ if (extendedPackageId != 0) {
+ if ((uint32_t)extendedPackageId < mNextPackageId) {
+ fprintf(stderr, "Package ID %d already in use!\n", mNextPackageId);
+ return NULL;
+ }
+ p = new Package(package, extendedPackageId);
+ } else {
+ p = new Package(package, mNextPackageId);
+ }
}
//printf("*** NEW PACKAGE: \"%s\" id=%d\n",
// String8(package).string(), p->getAssignedId());