Android解决java.lang.NoSuchMethodError: No virtual method into报错问题过程

最近项目中需要接入容联七陌客服系统,接入过程中将容联的Demo作为module添加到项目中,然后添加依赖,过程貌似很顺利,编译也没有问题,可是进入客服界面时,却报了下面的错误:


在这里插入图片描述

图片看起来不清晰,看报错代码:

06-13 17:16:11.546 30497-30497/? E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.sami91sami.h5, PID: 30497
    java.lang.NoSuchMethodError: No virtual method into
(Landroid/widget/ImageView;)Lcom/bumptech/glide/request/target/Target; in class 
Lcom/a/a/i; or its super classes (declaration of 'com.a.a.i' appears in 
/data/app/com.sami91sami.h5-1/base.apk)
        at com.m7.imkfsdk.chat.b.c.a(CardRxChatBox.java:52)
        at com.m7.imkfsdk.chat.b.a.b(BaseChatRow.java:90)
        at com.m7.imkfsdk.chat.a.a.getView(ChatAdapter.java:168)
        at android.widget.HeaderViewListAdapter.getView
(HeaderViewListAdapter.java:220)
        at android.widget.AbsListView.obtainView(AbsListView.java:2347)
        at android.widget.ListView.makeAndAddView(ListView.java:1864)
        at android.widget.ListView.fillSpecific(ListView.java:1344)
        at android.widget.ListView.layoutChildren(ListView.java:1663)
        at android.widget.AbsListView.onLayout(AbsListView.java:2151)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1076)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1076)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
        at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)
        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)
        at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
        at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
        at android.view.View.layout(View.java:15671)
        at android.view.ViewGroup.layout(ViewGroup.java:5038)
        at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2110)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1867)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1085)
        at android.view.ViewRootImpl$TraversalRunnable.run
(ViewRootImpl.java:5909)
        at android.view.Choreographer$CallbackRecord.run
(Choreographer.java:767)
        at android.view.Choreographer.doCallbacks(Choreographer.java:580)
        at android.view.Choreographer.doFrame(Choreographer.java:550)
        at android.view.Choreographer$FrameDisplayEventReceiver.run
(Choreographer.java:753)
        at android.os.Handler.handleCallback(Handler.java:739)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5293)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run
(ZygoteInit.java:903)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

我们可以根据报错,跳到报错的地方:


在这里插入图片描述

该报错的意思就是:没有 into(Landroid/widget/ImageView)的方法,代码能编译通过,说明项目中肯定是添加依赖了,那怎么还会报这个错误呢?还没添加依赖之前,项目中也是使用的Glide进行图片的加载,会不会是项目中的Glide与容联Demo中的Glide有冲突呢。

我们可以根据报错的地方into方法,点进入看源码:


在这里插入图片描述

可以看到容联Demo使用的Glide版本是3.7.0。

再来看看项目中Glide使用的版本:


在这里插入图片描述

可以看到项目中使用的Glide版本是4.5.0。

这时就想到真的很大概率是两者的Glide版本有冲突了。

果然将容联Demo中的Glide版本改成4.5.0之后,编译运行进入客服界面后,没有报错了,完美解决。


以下是个人公众号(longxuanzhigu),之后发布的文章会同步到该公众号,方便交流学习Android知识及分享个人爱好文章,有问题可以留言哦:


在这里插入图片描述

你可能感兴趣的:(Android解决java.lang.NoSuchMethodError: No virtual method into报错问题过程)