diff options
Diffstat (limited to 'src')
2 files changed, 9 insertions, 8 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/IncrementalClassLoader.java b/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/IncrementalClassLoader.java index e2adb192e7..40c2383651 100644 --- a/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/IncrementalClassLoader.java +++ b/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/IncrementalClassLoader.java @@ -31,7 +31,7 @@ public class IncrementalClassLoader extends ClassLoader { private final DelegateClassLoader delegateClassLoader; public IncrementalClassLoader(ClassLoader original, - String packageName, String codeCacheDir, String nativeLibDir, List<String> dexes) { + String packageName, File codeCacheDir, String nativeLibDir, List<String> dexes) { super(original.getParent()); // TODO(bazel-team): For some mysterious reason, we need to use two class loaders so that @@ -61,7 +61,7 @@ public class IncrementalClassLoader extends ClassLoader { } private static DelegateClassLoader createDelegateClassLoader( - String codeCacheDir, String nativeLibDir, List<String> dexes, ClassLoader original) { + File codeCacheDir, String nativeLibDir, List<String> dexes, ClassLoader original) { StringBuilder pathBuilder = new StringBuilder(); boolean first = true; for (String dex : dexes) { @@ -76,7 +76,7 @@ public class IncrementalClassLoader extends ClassLoader { Log.v("IncrementalClassLoader", "Incremental dex path is " + pathBuilder); Log.v("IncrementalClassLoader", "Native lib dir is " + nativeLibDir); - return new DelegateClassLoader(pathBuilder.toString(), new File(codeCacheDir), + return new DelegateClassLoader(pathBuilder.toString(), codeCacheDir, nativeLibDir, original); } @@ -91,7 +91,7 @@ public class IncrementalClassLoader extends ClassLoader { } public static void inject( - ClassLoader classLoader, String packageName, String codeCacheDir, + ClassLoader classLoader, String packageName, File codeCacheDir, String nativeLibDir, List<String> dexes) { IncrementalClassLoader incrementalClassLoader = new IncrementalClassLoader(classLoader, packageName, codeCacheDir, nativeLibDir, dexes); diff --git a/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/StubApplication.java b/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/StubApplication.java index 6de57ae800..c39e42ef1d 100644 --- a/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/StubApplication.java +++ b/src/tools/android/java/com/google/devtools/build/android/incrementaldeployment/StubApplication.java @@ -103,9 +103,10 @@ public class StubApplication extends Application { private List<String> getDexList(String packageName) { List<String> result = new ArrayList<>(); - File[] dexes = new File(INCREMENTAL_DEPLOYMENT_DIR + "/" + packageName + "/dex").listFiles(); + String dexDirectory = INCREMENTAL_DEPLOYMENT_DIR + "/" + packageName + "/dex"; + File[] dexes = new File(dexDirectory).listFiles(); if (dexes == null) { - throw new IllegalStateException(".dex directory does not exist"); + throw new IllegalStateException(".dex directory '" + dexDirectory + "' does not exist"); } for (File dex : dexes) { @@ -291,7 +292,7 @@ public class StubApplication extends Application { } } - private void instantiateRealApplication(String codeCacheDir, String dataDir) { + private void instantiateRealApplication(File codeCacheDir, String dataDir) { externalResourceFile = getExternalResourceFile(); String nativeLibDir; @@ -455,7 +456,7 @@ public class StubApplication extends Application { @Override protected void attachBaseContext(Context context) { instantiateRealApplication( - context.getCacheDir().getPath(), + context.getCacheDir(), context.getApplicationInfo().dataDir); // This is called from ActivityThread#handleBindApplication() -> LoadedApk#makeApplication(). |