钩子后如何从findAndHookMethod返回字符串值

时间:2019-07-17 15:02:01

标签: java android hook xposed

我需要调用android应用程序的方法。

我确实钩住并设置了param使其正常工作,但我需要返回字符串值。

public static void initAllHooks(final XC_LoadPackage.LoadPackageParam loadPackageParam, final String str, final String str2, final String str3, final String str4, final String str5, final String str6, final String str7, final String str8) {
        XposedBridge.log(TAG+"LpParam?: "+ Main.gLpParam.toString());
        findAndHookMethod("com.someapplication.controller.ControllerKey", loadPackageParam.classLoader, "encryptHmacRaw", String.class, String.class, String.class, String.class, String.class, String.class, String.class, String.class, new XC_MethodHook() {
            @Override
            protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                XposedBridge.log(TAG+"BeforeParam: "+ Arrays.toString(param.args));
            }

            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                param.args[0] = str;
                param.args[1] = str2;
                param.args[2] = str3;
                param.args[3] = str4;
                param.args[4] = str5;
                param.args[5] = str6;
                param.args[6] = str7;
                param.args[7] = str8;
                XposedBridge.log(TAG+"AfterParam: "+Arrays.toString(param.args));
                final String result = param.getResult().toString(); // I need to return this
                XposedBridge.log(TAG+"Result: "+result+"\nData: "+param.args[1]);
            }
});

xposed日志为“ 9e3c01719180f53a77936aa0827e8c65b4dd50cd844261c9744196f012c0c6bd6f53ab19fa194b5e0015c14193ff839fa24e00cc8a989d3a77dd756edb31ea7b”可以正常工作,但出于其他目的,我需要返回此输出,

0 个答案:

没有答案