replaceWith

@RequiresXposedApi(value = 102)
fun XposedInterface.HookHandle.replaceWith(callback: (HookParam) -> Any?): XposedInterface.HookHandle

用一个 replace 风格的 lambda 原子替换当前 hook,返回新 handle。

等价于「丢弃旧 hook 的全部 before/after/intercept 行为,新行为只生成返回值」。

上游约束:替换会保留原 hook 的 executable、priority、exceptionMode 和 hook ID; 替换成功后当前 handle 即失效,再调用其它方法会抛出 IllegalStateException。 若需要直接传 XposedInterface.Hooker,调用 XposedInterface.HookHandle.replaceHook 即可。

Parameters

callback

生成替代返回值的回调,会在 io.github.lingqiqi5211.ezhooktool.xposed.EzXposed.safeMode 打开时享受同样的保护