首页 > 解决方案 > 致命异常:kotlin.KotlinNullPointerException

问题描述

我已经构建了一个应用程序,可以在其中显示手机图库中的所有图像和视频。它工作正常。但在某些手机上,它会在 Glide 上给出空指针异常

这是我的日志猫

com.practice.ui.Media.AllGalleryImageAdapter.onBindViewHolder (AllGalleryImageAdapter.kt:47)
com.practice.ui.Media.AllGalleryImageAdapter.onBindViewHolder (AllGalleryImageAdapter.kt:26)
androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder (RecyclerView.java:6781)
androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder (RecyclerView.java:6823)
androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline (RecyclerView.java:5752)
androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline (RecyclerView.java:6019)
androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition (RecyclerView.java:5858)
androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition (RecyclerView.java:5854)
androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next (LinearLayoutManager.java:2230)
androidx.recyclerview.widget.GridLayoutManager.layoutChunk (GridLayoutManager.java:557)
androidx.recyclerview.widget.LinearLayoutManager.fill (LinearLayoutManager.java:1517)
androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren (LinearLayoutManager.java:612)
androidx.recyclerview.widget.GridLayoutManager.onLayoutChildren (GridLayoutManager.java:171)
androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2 (RecyclerView.java:3924)
androidx.recyclerview.widget.RecyclerView.onMeasure (RecyclerView.java:3336)
android.view.View.measure (View.java:25086)
android.widget.RelativeLayout.measureChildHorizontal (RelativeLayout.java:735)
android.widget.RelativeLayout.onMeasure (RelativeLayout.java:481)
android.view.View.measure (View.java:25086)
androidx.viewpager.widget.ViewPager.onMeasure (ViewPager.java:1638)
android.view.View.measure (View.java:25086)
android.widget.RelativeLayout.measureChildHorizontal (RelativeLayout.java:735)
android.widget.RelativeLayout.onMeasure (RelativeLayout.java:481)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.FrameLayout.onMeasure (FrameLayout.java:194)
android.view.View.measure (View.java:25086)
androidx.constraintlayout.widget.ConstraintLayout.onMeasure (ConstraintLayout.java:1676)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.FrameLayout.onMeasure (FrameLayout.java:194)
androidx.appcompat.widget.ContentFrameLayout.onMeasure (ContentFrameLayout.java:143)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.LinearLayout.measureChildBeforeLayout (LinearLayout.java:1552)
android.widget.LinearLayout.measureVertical (LinearLayout.java:842)
android.widget.LinearLayout.onMeasure (LinearLayout.java:721)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.FrameLayout.onMeasure (FrameLayout.java:194)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.LinearLayout.measureChildBeforeLayout (LinearLayout.java:1552)
android.widget.LinearLayout.measureVertical (LinearLayout.java:842)
android.widget.LinearLayout.onMeasure (LinearLayout.java:721)
android.view.View.measure (View.java:25086)
android.view.ViewGroup.measureChildWithMargins (ViewGroup.java:6872)
android.widget.FrameLayout.onMeasure (FrameLayout.java:194)
com.android.internal.policy.DecorView.onMeasure (DecorView.java:742)
android.view.View.measure (View.java:25086)
android.view.ViewRootImpl.performMeasure (ViewRootImpl.java:3083)
android.view.ViewRootImpl.measureHierarchy (ViewRootImpl.java:1857)
android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2146)
android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1745)
android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:7768)
android.view.Choreographer$CallbackRecord.run (Choreographer.java:967)
android.view.Choreographer.doCallbacks (Choreographer.java:791)
android.view.Choreographer.doFrame (Choreographer.java:726)
android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:952)
android.os.Handler.handleCallback (Handler.java:883)
android.os.Handler.dispatchMessage (Handler.java:100)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:7356)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:492)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:930)

这是第 47 行

Glide.with(context).load(model.name).into(holder.imageView)

glide 出现空指针异常的主要原因是什么?它在我的手机上运行良好。imagePath 和 imageview 很好。该应用程序只是在某些手机上崩溃,我无法创建该错误....

标签: androidkotlin

解决方案


推荐阅读