summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java15
-rw-r--r--mmodules/core_platform_api/api/platform/current-api.txt1
2 files changed, 11 insertions, 5 deletions
diff --git a/dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java b/dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java
index 4a9e863118..ee20d802a0 100644
--- a/dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java
+++ b/dalvik/src/main/java/dalvik/system/BaseDexClassLoader.java
@@ -128,15 +128,20 @@ public class BaseDexClassLoader extends ClassLoader {
: Arrays.copyOf(sharedLibraryLoaders, sharedLibraryLoaders.length);
this.pathList = new DexPathList(this, dexPath, librarySearchPath, null, isTrusted);
- if (reporter != null) {
- reportClassLoaderChain();
- }
+ reportClassLoaderChain();
}
/**
* Reports the current class loader chain to the registered {@code reporter}.
+ *
+ * @hide
*/
- private void reportClassLoaderChain() {
+ @libcore.api.CorePlatformApi
+ public void reportClassLoaderChain() {
+ if (reporter == null) {
+ return;
+ }
+
String[] classPathAndClassLoaderContexts = computeClassLoaderContextsNative();
if (classPathAndClassLoaderContexts.length == 0) {
return;
@@ -367,7 +372,7 @@ public class BaseDexClassLoader extends ClassLoader {
/**
* Reports the construction of a BaseDexClassLoader and provides opaque information about
* the class loader chain. For example, if the childmost ClassLoader in the chain:
- * {@quote BaseDexClassLoader { foo.dex } -> BaseDexClassLoader { base.apk }
+ * {@quote BaseDexClassLoader { foo.dex } -> BaseDexClassLoader { base.apk }
* -> BootClassLoader } was just initialized then the load of {@code "foo.dex"} would be
* reported with a classLoaderContext of {@code "PCL[];PCL[base.apk]"}.
*
diff --git a/mmodules/core_platform_api/api/platform/current-api.txt b/mmodules/core_platform_api/api/platform/current-api.txt
index 74d536ff62..d9185c3887 100644
--- a/mmodules/core_platform_api/api/platform/current-api.txt
+++ b/mmodules/core_platform_api/api/platform/current-api.txt
@@ -531,6 +531,7 @@ package dalvik.system {
method public void addDexPath(String);
method public void addNativePath(java.util.Collection<java.lang.String>);
method public String getLdLibraryPath();
+ method public void reportClassLoaderChain();
method public static void setReporter(dalvik.system.BaseDexClassLoader.Reporter);
}