Android 未能在multidex apk中Exposed钩住defpackage包的类

Android 未能在multidex apk中Exposed钩住defpackage包的类,android,hook,android-multidex,xposed,Android,Hook,Android Multidex,Xposed,这是一个多指标apk。 我想在类defpackage.bky中钩住一个方法,如下面的屏幕截图所示 我尝试按如下方式钩住Application.class“attach”方法,但失败:“java.lang.ClassNotFoundException:在路径上找不到类“defpackage.bky” XposedHelpers.findAndHookMethod(Application.class,“attach”,Context.class,新的XC_MethodHook(){ @凌驾 Ho

这是一个多指标apk。 我想在类defpackage.bky中钩住一个方法,如下面的屏幕截图所示

  • 我尝试按如下方式钩住Application.class“attach”方法,但失败:“java.lang.ClassNotFoundException:在路径上找不到类“defpackage.bky”

    XposedHelpers.findAndHookMethod(Application.class,“attach”,Context.class,新的XC_MethodHook(){
    @凌驾
    HookedMethod(MethodHookParam param)抛出可丢弃的后受保护的空{
    ClassLoader cl=((上下文)param.args[0]).getClassLoader();
    类hookclass=null;
    试一试{
    hookclass=cl.loadClass(“defpackage.bky”);
    }捕获(例外e){
    Log.e(“mtwmexposed”寻找defpackage.bky报错", e) );
    hookclass=null;
    }
    if(hookclass!=null){
    Log.i(“mtwmexposed”寻找defpackage.bky成功");
    exposedHelpers.findAndHookMethod(hookclass,“a”,
    JSONObject.class,
    新的XC_MethodHook(){
    @凌驾
    protected void beforeHookedMethod(MethodHookParam参数)抛出可丢弃的{
    super.beforehokedmethod(param);
    JSONObject shop_info=(JSONObject)参数args[0];
    Log.d(“mtwmexposed”,“From defpackage.bkt.a:”+shop_info.toString(2));
    }
    });
    }
    }
    });
    
  • 我还尝试如下钩住ClassLoader.class“getClass”方法,但也没有找到defpackage.bky

       XposedHelpers.findAndHookMethod(ClassLoader.class, "loadClass", String.class, new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                super.afterHookedMethod(param);
                if (param.hasThrowable()) return;
                Class<?> cls = (Class<?>) param.getResult();
                String name = cls.getName();
                Log.d("MtwmXposed", "class name =  " + name);
                if (name.equals("defpackage.bky")) {
                    Log.i("MtwmXposed", "寻找defpackage.bky成功");
                    XposedHelpers.findAndHookMethod(cls, "a",
                            JSONObject.class,
                            new XC_MethodHook() {
                                @Override
                                protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                                    super.beforeHookedMethod(param);
                                    JSONObject shop_info = (JSONObject) param.args[0];
                                    Log.d("MtwmXposed", "From defpackage.bkt.a: " + shop_info.toString(2));
                                }
                            });
                }
    
            }
        });
    
    XposedHelpers.findAndHookMethod(ClassLoader.class,“loadClass”,String.class,新的XC_MethodHook(){
    @凌驾
    HookedMethod(MethodHookParam param)抛出可丢弃的后受保护的空{
    super.afterHookedMethod(参数);
    if(param.hastrowable())返回;
    类cls=(类)param.getResult();
    字符串名称=cls.getName();
    Log.d(“mtwmexposed”,“class name=“+name”);
    if(name.equals(“defpackage.bky”)){
    Log.i(“mtwmexposed”寻找defpackage.bky成功");
    exposedHelpers.findAndHookMethod(cls,“a”,
    JSONObject.class,
    新的XC_MethodHook(){
    @凌驾
    protected void beforeHookedMethod(MethodHookParam参数)抛出可丢弃的{
    super.beforehokedmethod(param);
    JSONObject shop_info=(JSONObject)参数args[0];
    Log.d(“mtwmexposed”,“From defpackage.bkt.a:”+shop_info.toString(2));
    }
    });
    }
    }
    });
    

  • 对我说。你解决这个问题了吗???
       XposedHelpers.findAndHookMethod(ClassLoader.class, "loadClass", String.class, new XC_MethodHook() {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                super.afterHookedMethod(param);
                if (param.hasThrowable()) return;
                Class<?> cls = (Class<?>) param.getResult();
                String name = cls.getName();
                Log.d("MtwmXposed", "class name =  " + name);
                if (name.equals("defpackage.bky")) {
                    Log.i("MtwmXposed", "寻找defpackage.bky成功");
                    XposedHelpers.findAndHookMethod(cls, "a",
                            JSONObject.class,
                            new XC_MethodHook() {
                                @Override
                                protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                                    super.beforeHookedMethod(param);
                                    JSONObject shop_info = (JSONObject) param.args[0];
                                    Log.d("MtwmXposed", "From defpackage.bkt.a: " + shop_info.toString(2));
                                }
                            });
                }
    
            }
        });