diff --git a/core/src/main/java/io/github/lsposed/lspd/hooker/XposedInstallerHooker.java b/core/src/main/java/io/github/lsposed/lspd/hooker/XposedInstallerHooker.java index 4b323e03..d82e15d6 100644 --- a/core/src/main/java/io/github/lsposed/lspd/hooker/XposedInstallerHooker.java +++ b/core/src/main/java/io/github/lsposed/lspd/hooker/XposedInstallerHooker.java @@ -22,7 +22,9 @@ package io.github.lsposed.lspd.hooker; import android.os.IBinder; +import de.robv.android.xposed.XC_MethodReplacement; import de.robv.android.xposed.XposedHelpers; +import io.github.lsposed.lspd.BuildConfig; import io.github.lsposed.lspd.util.Utils; public class XposedInstallerHooker { @@ -37,5 +39,19 @@ public class XposedInstallerHooker { } catch (Throwable t) { Utils.logW("Could not hook LSPosed Manager", t); } + + // for showing the version mismatch dialog + try { + Class ConstantsClass = XposedHelpers.findClass("io.github.lsposed.manager.Constants", classLoader); + try { + XposedHelpers.setStaticObjectField(ConstantsClass, "xposedVersion", BuildConfig.VERSION_NAME); + return; + } catch (Throwable ignore) { + + } + XposedHelpers.findAndHookMethod(ConstantsClass, "getXposedVersion", XC_MethodReplacement.returnConstant(BuildConfig.VERSION_NAME)); + } catch (Throwable ignore) { + + } } }