diff options
author | Android (Google) Code Review <android-gerrit@google.com> | 2009-08-11 19:58:36 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-08-11 19:58:36 -0700 |
commit | b8546001701405a76dad7e6235046e592296fac2 (patch) | |
tree | 192f287fdc217bf11c616f2fae7a9b37d673ea1a /core | |
parent | 188f5a71061791906572de375c5efe26cadddbae (diff) | |
parent | 82e1ee93eece8fb0aec6acc3ef4ee7b1c86feec7 (diff) | |
download | frameworks_base-b8546001701405a76dad7e6235046e592296fac2.zip frameworks_base-b8546001701405a76dad7e6235046e592296fac2.tar.gz frameworks_base-b8546001701405a76dad7e6235046e592296fac2.tar.bz2 |
Merge change 20878 into donut
* changes:
Fix issue #2048263: More debugging information
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/app/ActivityThread.java | 8 | ||||
-rw-r--r-- | core/java/android/content/res/AssetManager.java | 5 | ||||
-rw-r--r-- | core/jni/android_util_AssetManager.cpp | 18 |
3 files changed, 31 insertions, 0 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 32a2891..e045105 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -1701,6 +1701,14 @@ public final class ActivityThread { printRow(pw, TWO_COUNT_COLUMNS, "numPagers:", stats.numPagers, "inactivePageKB:", (stats.totalBytes - stats.referencedBytes) / 1024); printRow(pw, ONE_COUNT_COLUMN, "activePageKB:", stats.referencedBytes / 1024); + + // Asset details. + String assetAlloc = AssetManager.getAssetAllocations(); + if (assetAlloc != null) { + pw.println(" "); + pw.println(" Asset Allocations"); + pw.print(assetAlloc); + } } private void printRow(PrintWriter pw, String format, Object...objs) { diff --git a/core/java/android/content/res/AssetManager.java b/core/java/android/content/res/AssetManager.java index 8ebe093..0bc8a9d 100644 --- a/core/java/android/content/res/AssetManager.java +++ b/core/java/android/content/res/AssetManager.java @@ -667,6 +667,11 @@ public final class AssetManager { /** * {@hide} */ + public native static final String getAssetAllocations(); + + /** + * {@hide} + */ public native static final int getGlobalAssetManagerCount(); private native final int newTheme(); diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp index 66b2506..562cc8f 100644 --- a/core/jni/android_util_AssetManager.cpp +++ b/core/jni/android_util_AssetManager.cpp @@ -1536,6 +1536,22 @@ static jint android_content_AssetManager_getGlobalAssetCount(JNIEnv* env, jobjec return Asset::getGlobalCount(); } +static jobject android_content_AssetManager_getAssetAllocations(JNIEnv* env, jobject clazz) +{ + String8 alloc = Asset::getAssetAllocations(); + if (alloc.length() <= 0) { + return NULL; + } + + jstring str = env->NewStringUTF(alloc.string()); + if (str == NULL) { + doThrow(env, "java/lang/OutOfMemoryError"); + return NULL; + } + + return str; +} + static jint android_content_AssetManager_getGlobalAssetManagerCount(JNIEnv* env, jobject clazz) { return AssetManager::getGlobalCount(); @@ -1646,6 +1662,8 @@ static JNINativeMethod gAssetManagerMethods[] = { (void*) android_content_AssetManager_destroy }, { "getGlobalAssetCount", "()I", (void*) android_content_AssetManager_getGlobalAssetCount }, + { "getAssetAllocations", "()Ljava/lang/String;", + (void*) android_content_AssetManager_getAssetAllocations }, { "getGlobalAssetManagerCount", "()I", (void*) android_content_AssetManager_getGlobalAssetCount }, }; |