Skip to content

Commit 071d59b

Browse files
author
weishu.tws
committed
[Fix]: toast when use external xposed installer.
1 parent 7f8a591 commit 071d59b

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

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

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import android.util.Pair;
1515
import android.view.AbsSavedState;
1616
import android.view.View;
17+
import android.widget.Toast;
1718

1819
import com.getkeepsafe.relinker.ReLinker;
1920

@@ -312,24 +313,29 @@ private static void initForXposedInstaller(Context context, ApplicationInfo appl
312313
for (int i = 0; i < length; i++) {
313314
Array.set(xposed_prop_files, i, xposedPropPath);
314315
}
316+
317+
318+
DexposedBridge.findAndHookMethod(xposedApp, "getActiveXposedVersion", new XC_MethodHook() {
319+
@Override
320+
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
321+
super.beforeHookedMethod(param);
322+
param.setResult(FAKE_XPOSED_VERSION);
323+
}
324+
});
325+
DexposedBridge.findAndHookMethod(xposedApp, "getInstalledXposedVersion", new XC_MethodHook() {
326+
@Override
327+
protected void beforeHookedMethod(XC_MethodHook.MethodHookParam param) throws Throwable {
328+
super.beforeHookedMethod(param);
329+
param.setResult(FAKE_XPOSED_VERSION);
330+
}
331+
});
315332
} catch (Throwable ignored) {
316333
// only support 3.1.5 and above.
317-
}
318-
319-
DexposedBridge.findAndHookMethod(xposedApp, "getActiveXposedVersion", new XC_MethodHook() {
320-
@Override
321-
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
322-
super.beforeHookedMethod(param);
323-
param.setResult(FAKE_XPOSED_VERSION);
334+
try {
335+
Toast.makeText(context, "The XposedInstaller you used is not supported.", Toast.LENGTH_SHORT).show();
336+
} catch (Throwable ignored2) {
324337
}
325-
});
326-
DexposedBridge.findAndHookMethod(xposedApp, "getInstalledXposedVersion", new XC_MethodHook() {
327-
@Override
328-
protected void beforeHookedMethod(XC_MethodHook.MethodHookParam param) throws Throwable {
329-
super.beforeHookedMethod(param);
330-
param.setResult(FAKE_XPOSED_VERSION);
331-
}
332-
});
338+
}
333339

334340
final Constructor<?> fileConstructor1 = XposedHelpers.findConstructorExact(File.class, String.class);
335341
final Constructor<?> fileConstructor2 = XposedHelpers.findConstructorExact(File.class, String.class, String.class);

0 commit comments

Comments
 (0)