错误
android 项目使用图片选择器PictureSelector, 打开相册时, android studio 控制台报错
java.lang.NoSuchMethodError: No virtual method sizeMultiplier(F)Lcom/bumptech/glide/request/RequestOptions; in class Lcom/bumptech/glide/request/RequestOptions; or its super classes (declaration of 'com.bumptech.glide.request.RequestOptions' appears in /data/app/com.example.electronicmall-VEp1UYZ1ts9g30C-jJkZnw==/base.apk!classes16.dex)
详细错误
2022-10-04 16:08:12.287 2539-2539/com.example.electronicmall E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.electronicmall, PID: 2539
java.lang.NoSuchMethodError: No virtual method sizeMultiplier(F)Lcom/bumptech/glide/request/RequestOptions; in class Lcom/bumptech/glide/request/RequestOptions; or its super classes (declaration of 'com.bumptech.glide.request.RequestOptions' appears in /data/app/com.example.electronicmall-VEp1UYZ1ts9g30C-jJkZnw==/base.apk!classes16.dex)
at com.luck.picture.lib.adapter.PictureImageGridAdapter.onBindViewHolder(PictureImageGridAdapter.java:190)
at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:7065)
at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7107)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6012)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6279)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303)
at androidx.recyclerview.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:561)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
at androidx.recyclerview.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:170)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
at android.view.View.layout(View.java:22496)
at android.view.ViewGroup.layout(ViewGroup.java:6528)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1103)
at android.view.View.layout(View.java:22496)
at android.view.ViewGroup.layout(ViewGroup.java:6528)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:334)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at android.view.View.layout(View.java:22496)
at android.view.ViewGroup.layout(ViewGroup.java:6528)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1857)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1701)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1610)
at android.view.View.layout(View.java:22496)
at android.view.ViewGroup.layout(ViewGroup.java:6528)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:334)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at com.android.internal.policy.DecorView.onLayout(DecorView.java:1146)
at android.view.View.layout(View.java:22496)
at android.view.ViewGroup.layout(ViewGroup.java:6528)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:3743)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3207)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2166)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8887)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1280)
at android.view.Choreographer.doCallbacks(Choreographer.java:1019)
at android.view.Choreographer.doFrame(Choreographer.java:911)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1248)
at android.os.Handler.handleCallback(Handler.java:900)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:219)
at android.app.ActivityThread.main(ActivityThread.java:8668)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)
2022-10-04 16:08:12.300 2539-2539/com.example.electronicmall I/Process: Sending signal. PID: 2539 SIG: 9
解决方案
a p p appapp→ \rightarrow→b u i l d . g r a d l e ( a p p ) build.gradle (app)build.gradle(app)→ \rightarrow→d e p e n d e n c i e s dependenciesdependencies
适当降低Glide版本
对于笔者而言
第三方PictureSelector库版本
implementation 'com.github.LuckSiege.PictureSelector:picture_library:v2.2.3'
所适配Glide版本(glide:3.5.0+报错)
implementation 'com.github.bumptech.glide:glide:2.9.0'
即
原因
由于Glide版本问题,第三方库Glide版本需要与主项目的Glide版本一致,否则会产生冲突
原创不易
转载请标明出处
如果对你有所帮助 别忘啦点赞支持哈
版权声明:本文为T_Y_F_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。