Skip to content

Commit 8a7250f

Browse files
author
tiann
committed
[Structure] revert inject system classloader.
1 parent 04835ab commit 8a7250f

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

exposed-core/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ dependencies {
3131
}
3232

3333
group = 'me.weishu.exposed'
34-
version = '0.4.5'
34+
version = '0.4.7'
3535

3636
apply plugin: 'com.novoda.bintray-release'
3737

exposed-core/src/main/java/de/robv/android/xposed/ExposedHelper.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ public static void initSeLinux(String processName) {
1313
}
1414

1515
public static boolean isIXposedMod(Class<?> moduleClass) {
16+
XposedBridge.log("module's classLoader : " + moduleClass.getClassLoader() + ", super: " + moduleClass.getSuperclass());
17+
XposedBridge.log("IXposedMod's classLoader : " + IXposedMod.class.getClassLoader());
18+
1619
return IXposedMod.class.isAssignableFrom(moduleClass);
1720
}
1821

exposed-core/src/main/java/me/weishu/exposed/ExposedBridge.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public class ExposedBridge {
6666

6767
private static final int FAKE_XPOSED_VERSION = 91;
6868
private static final String VERSION_KEY = "version";
69-
private static boolean SYSTEM_CLASSLOADER_INJECT = true;
69+
private static boolean SYSTEM_CLASSLOADER_INJECT = false;
7070

7171
private static final String WECHAT_PACKAGE = "com.tencent.mm";
7272

@@ -104,7 +104,7 @@ enum ModuleLoadResult {
104104
}
105105

106106
public static void initOnce(Context context, ApplicationInfo applicationInfo, ClassLoader appClassLoader) {
107-
SYSTEM_CLASSLOADER_INJECT = patchSystemClassLoader();
107+
// SYSTEM_CLASSLOADER_INJECT = patchSystemClassLoader();
108108
XposedBridge.XPOSED_BRIDGE_VERSION = FAKE_XPOSED_VERSION;
109109
appContext = context;
110110
ReLinker.loadLibrary(context, "epic");
@@ -127,6 +127,7 @@ private static boolean patchSystemClassLoader() {
127127
parent.setAccessible(true);
128128
parent.set(systemClassLoader, xposedClassLoader);
129129

130+
log("XposedBridge's BootClassLoader: " + XposedBridge.BOOTCLASSLOADER + ", parent: " + XposedBridge.BOOTCLASSLOADER.getParent());
130131
// SystemClassLoader -> XposedClassLoader -> BootstrapClassLoader
131132
return systemClassLoader.getParent() == xposedClassLoader;
132133
} catch (NoSuchFieldException e) {

0 commit comments

Comments
 (0)