Process: com.oppo.reader, PID: 20472
java.lang.NoClassDefFoundError: com.zhangyue.iReader.PDF2.ui.PDFCatalogView$PageChangedListener
at com.zhangyue.iReader.PDF2.ui.PDFCatalogView.show(PDFCatalogView.java:176)
at com.zhangyue.iReader.PDF2.ui.PDFCataWindow.show(PDFCataWindow.java:56)
at com.zhangyue.iReader.PDF2.ui.ActivityPDF2.showChapList(ActivityPDF2.java:1556)
at com.zhangyue.iReader.PDF2.ui.ActivityPDF2.access$3100(ActivityPDF2.java:143)
at com.zhangyue.iReader.PDF2.ui.ActivityPDF2$9$1.run(ActivityPDF2.java:882)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:171)
at android.app.ActivityThread.main(ActivityThread.java:5720)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
这个是错误日志,说类找不到。但是PDFCatalogView 这个类都可以找到,里面的一个子类怎么可能找不到呢?
因为pdf 是通过android 插件框架加载的,那么就去插件加载框架里面,打断点,看找class 的时候,为什么找不到。
结果发现,不是com.zhangyue.iReader.PDF2.ui.PDFCatalogView$PageChangedListener 这个类找不到,而是他继承的子类,找不到。我去找了下,果然没有。
好吧,有时候,说一个类找不到,可能不是这个类找不到,而是这个类依赖的类找不到。注意这个坑啊。