gpt4 book ai didi

java - 如何在Xposite模块中hook SetValue(String)

转载 作者:行者123 更新时间:2023-12-01 09:10:12 24 4
gpt4 key购买 nike

在我的应用程序中,我想从 TextEdit 中 Hook SetValue(String) 我尝试了这样的代码,但没有成功。

public class XposedClass implements IXposedHookLoadPackage {

public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {

String classToHook = "android.widget.EditText";
String functionToHook = "setValue";

if(lpparam.packageName.equals("my.com.app")) {

XposedBridge.log("Loaded app: " + lpparam.packageName);

findAndHookMethod(classToHook, lpparam.classLoader, functionToHook, String.class,
new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {

XposedBridge.log("hooking: " + param.args[0]);

}

});
}
}
}

有人知道上面的钩子(Hook)代码有什么问题吗?

最佳答案

Android API 中没有以下定义的函数[0]。

android.widget.EditText.setValue(String)

所以,基本上你挂接了错误的函数。可能您想 Hook android.widget.EditText.setText(CharSequence, TextView.BufferType)

此外,您可以检查 Xposed 日志以了解代码中的 Hook 错误。当您尝试 Hook 错误的函数时,将抛出 NoSuchMethodException

[0] https://developer.android.com/reference/android/widget/EditText.html

关于java - 如何在Xposite模块中hook SetValue(String),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40962857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com