AliuHook

464 阅读1分钟

AliuHook

Java Xposed Api for LSPlant

Please note that this is only a partial implementation of Xposed, since we only need method hooking. Thus, only XposedBridge and hook classes are implemented. If you need the rest, just copy paste it from original Xposed and it should work with almost no modificiations.

Additionally, XposedBridge contains these new methods:

  • makeClassInheritable - Makes a final class inheritable, see LSPlant doc for more info
  • deoptimizeMethod - Deoptimises method to solve inline issues, see LSPlant doc for more info
  • disableProfileSaver - Disables Android Profile Saver to try to prevent ahead of time compilation of code which leads to aggressive inlining, see source.android.com/devices/tec…
  • disableHiddenApiRestrictions - Disables all hidden api restrictions, allowing full access to internal Android APIs, see developer.android.com/guide/app-c…

Supported Android versions (same as LSPlant)

  • Android 5.0 - 13 (API level 21 - 34)
  • armeabi-v7a, arm64-v8a, x86, x86-64

Get Started

repositories {
    maven("https://maven.aliucord.com/snapshots")
}

dependencies {
    // or change main-SNAPSHOT to short commit hash to target a specific commit
    implementation "com.aliucord:Aliuhook:main-SNAPSHOT"
}

Now you're ready to get hooking! No init needed

XposedBridge.hookMethod(Activity.class.getDeclaredMethod("onCreate", Bundle.class), new XC_MethodHook() {
    @Override
    public void beforeHookedMethod(MethodHookParam param) throws Throwable {
        Log.d(TAG, "Activity" + param.thisObject + "about to be created!");
    }
});

Credits

github:github.com/Aliucord/ho…