xposed的classnotfound问题(禁用即时运行)

xposed的classnotfound问题(禁用即时运行),classnotfound,xposed,Classnotfound,Xposed,我制作了一个xposed模块来修改google messenger应用程序,但我遇到了一个问题,使用引导类加载程序无法找到该类: public class XposedModSendTimestamp implements IXposedHookLoadPackage { public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable { if (!lpparam

我制作了一个xposed模块来修改google messenger应用程序,但我遇到了一个问题,使用引导类加载程序无法找到该类:

    public class XposedModSendTimestamp implements IXposedHookLoadPackage {
        public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
        if (!lpparam.packageName.equals("com.google.android.apps.messaging"))
            return;
        XposedBridge.log("Attempt to hook ConversationMessageView.a");
        findAndHookMethod("com.google.android.apps.messaging.ui.ConversationMessageView", lpparam.classLoader, "a", Cursor.class, String.class, "boolean", String.class, new XC_MethodHook() {
            @Override
            protected void beforeHookedMethod(MethodHookParam param) throws Throwable{
                //code
            }
        });
    }
}
exposed日志中的错误:

09-29 00:20:49.194 I/Xposed  (  729):   Loading class com.xposed.florian.messengermod.XposedModSendTimestamp
09-29 00:21:28.915 I/Xposed  ( 4465): Attempt to hook ConversationMessageView.a
09-29 00:21:28.927 E/Xposed  ( 4465): de.robv.android.xposed.XposedHelpers$ClassNotFoundError: java.lang.ClassNotFoundException: com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.XposedHelpers.findClass(XposedHelpers.java:62)
09-29 00:21:28.927 E/Xposed  ( 4465):   at com.xposed.florian.messengermod.XposedModSendTimestamp.handleLoadPackage(XposedModSendTimestamp.java:17)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.IXposedHookLoadPackage$Wrapper.handleLoadPackage(IXposedHookLoadPackage.java:34)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.callbacks.XC_LoadPackage.call(XC_LoadPackage.java:61)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.callbacks.XCallback.callAll(XCallback.java:106)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.XposedBridge$1.beforeHookedMethod(XposedBridge.java:193)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:720)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.app.ActivityThread.handleBindApplication(<Xposed>)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.app.ActivityThread.access$1600(ActivityThread.java:159)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1445)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.os.Handler.dispatchMessage(Handler.java:102)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.os.Looper.loop(Looper.java:152)
09-29 00:21:28.927 E/Xposed  ( 4465):   at android.app.ActivityThread.main(ActivityThread.java:5507)
09-29 00:21:28.927 E/Xposed  ( 4465):   at java.lang.reflect.Method.invoke(Native Method)
09-29 00:21:28.927 E/Xposed  ( 4465):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
09-29 00:21:28.927 E/Xposed  ( 4465):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
09-29 00:21:28.927 E/Xposed  ( 4465): Caused by: java.lang.ClassNotFoundException: com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed  ( 4465):   at java.lang.Class.classForName(Native Method)
09-29 00:21:28.927 E/Xposed  ( 4465):   at java.lang.Class.forName(Class.java:324)
09-29 00:21:28.927 E/Xposed  ( 4465):   at external.org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:823)
09-29 00:21:28.927 E/Xposed  ( 4465):   at de.robv.android.xposed.XposedHelpers.findClass(XposedHelpers.java:60)
09-29 00:21:28.927 E/Xposed  ( 4465):   ... 16 more
09-29 00:21:28.927 E/Xposed  ( 4465): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.apps.messaging.ui.ConversationMessageView" on path: DexPathList[[zip file "/data/app/com.google.android.apps.messaging-1/base.apk"],nativeLibraryDirectories=[/data/app/com.google.android.apps.messaging-1/lib/arm64, /data/app/com.google.android.apps.messaging-1/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]
09-29 00:21:28.927 E/Xposed  ( 4465):   at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
09-29 00:21:28.927 E/Xposed  ( 4465):   at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
09-29 00:21:28.927 E/Xposed  ( 4465):   at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
09-29 00:21:28.927 E/Xposed  ( 4465):   ... 20 more
09-29 00:21:28.927 E/Xposed  ( 4465):   Suppressed: java.lang.ClassNotFoundException: com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed  ( 4465):       at java.lang.Class.classForName(Native Method)
09-29 00:21:28.927 E/Xposed  ( 4465):       at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
09-29 00:21:28.927 E/Xposed  ( 4465):       at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
09-29 00:21:28.927 E/Xposed  ( 4465):       at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
09-29 00:21:28.927 E/Xposed  ( 4465):       ... 21 more
09-29 00:21:28.927 E/Xposed  ( 4465):   Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
09-29 00:20:49.194 I/Xposed(729):加载类com.Xposed.florian.messengermod.XposedModSendTimestamp
09-29 00:21:28.915 I/Xposed(4465):尝试挂接ConversationMessageView.a
09-29 00:21:28.927 E/Xposed(4465):de.robv.android.Xposed.XposedHelpers$ClassNotFoundError:java.lang.ClassNotFoundException:com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.XposedHelpers.findClass(XposedHelpers.java:62)
09-29 00:21:28.927 E/Xposed(4465):位于com.Xposed.florian.messengermod.xposedmodsendtimstamp.handleLoadPackage(xposedmodsendtimstamp.java:17)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.IXposedHookLoadPackage$Wrapper.handleLoadPackage(IXposedHookLoadPackage.java:34)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.callbacks.XC_LoadPackage.call(XC_LoadPackage.java:61)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.callbacks.XCallback.callAll(XCallback.java:106)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.XposedBridge$1.beforeHookedMethod(XposedBridge.java:193)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.XposedBridge.handleHookedMethod(XposedBridge.java:720)
09-29 00:21:28.927 E/Xposed(4465):在android.app.ActivityThread.handleBindApplication()上
09-29 00:21:28.927 E/Xposed(4465):在android.app.ActivityThread.access$1600(ActivityThread.java:159)
09-29 00:21:28.927 E/Xposed(4465):位于android.app.ActivityThread$H.handleMessage(ActivityThread.java:1445)
09-29 00:21:28.927 E/Xposed(4465):在android.os.Handler.dispatchMessage(Handler.java:102)上
09-29 00:21:28.927 E/Xposed(4465):在android.os.Looper.loop(Looper.java:152)
09-29 00:21:28.927 E/Xposed(4465):位于android.app.ActivityThread.main(ActivityThread.java:5507)
09-29 00:21:28.927 E/Xposed(4465):位于java.lang.reflect.Method.invoke(本机方法)
09-29 00:21:28.927 E/Xposed(4465):位于com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
09-29 00:21:28.927 E/Xposed(4465):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
09-29 00:21:28.927 E/Xposed(4465):位于de.robv.android.Xposed.XposedBridge.main(XposedBridge.java:132)
09-29 00:21:28.927 E/Xposed(4465):原因:java.lang.ClassNotFoundException:com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed(4465):位于java.lang.Class.classForName(本机方法)
09-29 00:21:28.927e/Xposed(4465):位于java.lang.Class.forName(Class.java:324)
09-29 00:21:28.927 E/Xposed(4465):在external.org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:823)
09-29 00:21:28.927 E/Xposed(4465):在de.robv.android.Xposed.XposedHelpers.findClass(XposedHelpers.java:60)
09-29 00:21:28.927 E/Xposed(4465):。。。还有16个
09-29 00:21:28.927 E/Xposed(4465):原因:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件”/data/app/com.google.android.apps.messaging-1/base.apk]的NativeLibrary目录中未找到类“com.google.android.apps.messaging.ui.ConversationMessageView”=[/data/app/com.google.android.apps.messaging-1/lib/arm64,/data/app/com.google.android.apps.messaging-1/base.apk!/lib/arm64-v8a,/vendor/lib64,/system/lib64]]
09-29 00:21:28.927 E/Xposed(4465):在dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
09-29 00:21:28.927e/Xposed(4465):在java.lang.ClassLoader.loadClass(ClassLoader.java:511)
09-29 00:21:28.927e/Xposed(4465):在java.lang.ClassLoader.loadClass(ClassLoader.java:469)
09-29 00:21:28.927 E/Xposed(4465):…还有20个
09-29 00:21:28.927 E/Xposed(4465):抑制:java.lang.ClassNotFoundException:com.google.android.apps.messaging.ui.ConversationMessageView
09-29 00:21:28.927 E/Xposed(4465):位于java.lang.Class.classForName(本机方法)
09-29 00:21:28.927e/Xposed(4465):位于java.lang.BootClassLoader.findClass(ClassLoader.java:781)
09-29 00:21:28.927 E/Xposed(4465):位于java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
09-29 00:21:28.927 E/Xposed(4465):在java.lang.ClassLoader.loadClass(ClassLoader.java:504)
09-29 00:21:28.927 E/Xposed(4465):…还有21个
09-29 00:21:28.927 E/Xposed(4465):原因:java.lang.NoClassDefFoundError:使用引导类加载程序找不到类;没有可用的堆栈跟踪
我尝试了这个配置,使用的是来自的教程示例,它很有效,所以我认为它是关于应用程序的,也可能是关于类加载器的,但我对这个不太了解


所以请帮助我,我不明白。

你确定
com.google.android.apps.messaging.ui.ConversationMessageView
类确实存在吗?你从哪里得到类名的?是的,我确定,我反编译了apk(zip和dex2jar),并且在jar文件的源代码中找到了这个类。