diff --git a/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java b/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java index 3bc92a6c1..71b61f475 100644 --- a/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java +++ b/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java @@ -5,18 +5,19 @@ import java.io.IOException; import java.net.URL; import java.util.Enumeration; -import dalvik.system.DexClassLoader; +import dalvik.system.BaseDexClassLoader; -public class DynamicClassLoader extends DexClassLoader { +public class DynamicClassLoader extends BaseDexClassLoader { private static final ClassLoader base = Object.class.getClassLoader(); public DynamicClassLoader(File apk) { - super(apk.getPath(), apk.getParent(), null, base); + this(apk, base); } public DynamicClassLoader(File apk, ClassLoader parent) { - super(apk.getPath(), apk.getParent(), null, parent); + // Set optimizedDirectory to null to bypass DexFile's security checks + super(apk.getPath(), null, null, parent); } @Override