Loading core/java/android/app/ActivityThread.java +4 −0 Original line number Diff line number Diff line Loading @@ -174,8 +174,10 @@ public final class ActivityThread { static final ThreadLocal<ActivityThread> sThreadLocal = new ThreadLocal<ActivityThread>(); Instrumentation mInstrumentation; String mInstrumentationAppDir = null; String mInstrumentationAppLibraryDir = null; String mInstrumentationAppPackage = null; String mInstrumentedAppDir = null; String mInstrumentedAppLibraryDir = null; boolean mSystemThread = false; boolean mJitEnabled = false; Loading Loading @@ -3936,8 +3938,10 @@ public final class ActivityThread { } mInstrumentationAppDir = ii.sourceDir; mInstrumentationAppLibraryDir = ii.nativeLibraryDir; mInstrumentationAppPackage = ii.packageName; mInstrumentedAppDir = data.info.getAppDir(); mInstrumentedAppLibraryDir = data.info.getLibDir(); ApplicationInfo instrApp = new ApplicationInfo(); instrApp.packageName = ii.packageName; Loading core/java/android/app/LoadedApk.java +12 −2 Original line number Diff line number Diff line Loading @@ -261,6 +261,7 @@ public final class LoadedApk { if (mIncludeCode && !mPackageName.equals("android")) { String zip = mAppDir; String libraryPath = mLibDir; /* * The following is a bit of a hack to inject Loading @@ -273,15 +274,20 @@ public final class LoadedApk { String instrumentationAppDir = mActivityThread.mInstrumentationAppDir; String instrumentationAppLibraryDir = mActivityThread.mInstrumentationAppLibraryDir; String instrumentationAppPackage = mActivityThread.mInstrumentationAppPackage; String instrumentedAppDir = mActivityThread.mInstrumentedAppDir; String instrumentedAppLibraryDir = mActivityThread.mInstrumentedAppLibraryDir; String[] instrumentationLibs = null; if (mAppDir.equals(instrumentationAppDir) || mAppDir.equals(instrumentedAppDir)) { zip = instrumentationAppDir + ":" + instrumentedAppDir; libraryPath = instrumentationAppLibraryDir + ":" + instrumentedAppLibraryDir; if (! instrumentedAppDir.equals(instrumentationAppDir)) { instrumentationLibs = getLibrariesFor(instrumentationAppPackage); Loading @@ -301,7 +307,7 @@ public final class LoadedApk { */ if (ActivityThread.localLOGV) Slog.v(ActivityThread.TAG, "Class path: " + zip + ", JNI path: " + mLibDir); Slog.v(ActivityThread.TAG, "Class path: " + zip + ", JNI path: " + libraryPath); // Temporarily disable logging of disk reads on the Looper thread // as this is early and necessary. Loading @@ -309,7 +315,7 @@ public final class LoadedApk { mClassLoader = ApplicationLoaders.getDefault().getClassLoader( zip, mLibDir, mBaseClassLoader); zip, libraryPath, mBaseClassLoader); initializeJavaContextClassLoader(); StrictMode.setThreadPolicy(oldPolicy); Loading Loading @@ -442,6 +448,10 @@ public final class LoadedApk { return mAppDir; } public String getLibDir() { return mLibDir; } public String getResDir() { return mResDir; } Loading Loading
core/java/android/app/ActivityThread.java +4 −0 Original line number Diff line number Diff line Loading @@ -174,8 +174,10 @@ public final class ActivityThread { static final ThreadLocal<ActivityThread> sThreadLocal = new ThreadLocal<ActivityThread>(); Instrumentation mInstrumentation; String mInstrumentationAppDir = null; String mInstrumentationAppLibraryDir = null; String mInstrumentationAppPackage = null; String mInstrumentedAppDir = null; String mInstrumentedAppLibraryDir = null; boolean mSystemThread = false; boolean mJitEnabled = false; Loading Loading @@ -3936,8 +3938,10 @@ public final class ActivityThread { } mInstrumentationAppDir = ii.sourceDir; mInstrumentationAppLibraryDir = ii.nativeLibraryDir; mInstrumentationAppPackage = ii.packageName; mInstrumentedAppDir = data.info.getAppDir(); mInstrumentedAppLibraryDir = data.info.getLibDir(); ApplicationInfo instrApp = new ApplicationInfo(); instrApp.packageName = ii.packageName; Loading
core/java/android/app/LoadedApk.java +12 −2 Original line number Diff line number Diff line Loading @@ -261,6 +261,7 @@ public final class LoadedApk { if (mIncludeCode && !mPackageName.equals("android")) { String zip = mAppDir; String libraryPath = mLibDir; /* * The following is a bit of a hack to inject Loading @@ -273,15 +274,20 @@ public final class LoadedApk { String instrumentationAppDir = mActivityThread.mInstrumentationAppDir; String instrumentationAppLibraryDir = mActivityThread.mInstrumentationAppLibraryDir; String instrumentationAppPackage = mActivityThread.mInstrumentationAppPackage; String instrumentedAppDir = mActivityThread.mInstrumentedAppDir; String instrumentedAppLibraryDir = mActivityThread.mInstrumentedAppLibraryDir; String[] instrumentationLibs = null; if (mAppDir.equals(instrumentationAppDir) || mAppDir.equals(instrumentedAppDir)) { zip = instrumentationAppDir + ":" + instrumentedAppDir; libraryPath = instrumentationAppLibraryDir + ":" + instrumentedAppLibraryDir; if (! instrumentedAppDir.equals(instrumentationAppDir)) { instrumentationLibs = getLibrariesFor(instrumentationAppPackage); Loading @@ -301,7 +307,7 @@ public final class LoadedApk { */ if (ActivityThread.localLOGV) Slog.v(ActivityThread.TAG, "Class path: " + zip + ", JNI path: " + mLibDir); Slog.v(ActivityThread.TAG, "Class path: " + zip + ", JNI path: " + libraryPath); // Temporarily disable logging of disk reads on the Looper thread // as this is early and necessary. Loading @@ -309,7 +315,7 @@ public final class LoadedApk { mClassLoader = ApplicationLoaders.getDefault().getClassLoader( zip, mLibDir, mBaseClassLoader); zip, libraryPath, mBaseClassLoader); initializeJavaContextClassLoader(); StrictMode.setThreadPolicy(oldPolicy); Loading Loading @@ -442,6 +448,10 @@ public final class LoadedApk { return mAppDir; } public String getLibDir() { return mLibDir; } public String getResDir() { return mResDir; } Loading