Android ViewPager片段ImageView滑动内存泄漏
我正在使用Android ViewPager片段ImageView滑动内存泄漏,android,memory-leaks,android-viewpager,out-of-memory,android-glide,Android,Memory Leaks,Android Viewpager,Out Of Memory,Android Glide,我正在使用ViewPager和FragmentStatePagerAdapter 每个片段都有图像视图。 Glide用于加载图像: Glide.with(fragment)//current Fragment .load(imageUrl)//URL String .dontAnimate() .skipMemoryCache(true) .into(imageView_N); ViewPager的OffscreenPageLimit为默认值(1) 因
ViewPager
和FragmentStatePagerAdapter
每个
片段
都有图像视图
。Glide
用于加载图像:
Glide.with(fragment)//current Fragment
.load(imageUrl)//URL String
.dontAnimate()
.skipMemoryCache(true)
.into(imageView_N);
ViewPager
的OffscreenPageLimit
为默认值(1)因此,
ondestory
正在调用每个片段
但是在下一个和下一个片段滑动后,内存会增加,但不会释放。
最后,OutOfMemory
我知道,这可能是一个重复的问题,但任何其他帖子都帮不了我。我遇到了同样的问题。如果有人能给我一个提示就太好了。经过大量调试,我通过堆转储解决了这个问题。在我的例子中,即使调用了fragment.onDestroy(),该片段仍然存在于堆中,因为其他一些类/方法(如onClickListener)持有其引用,这显然会导致内存泄漏。希望这能对你有所帮助。@xudshen那么,你当时是怎么解决的呢?你能给我们一些想法来清楚地销毁这些引用吗?检查这篇文章来发现内存泄漏:我遇到了同样的问题。如果有人能给我一个提示就太好了。经过大量调试,我通过堆转储解决了这个问题。在我的例子中,即使调用了fragment.onDestroy(),该片段仍然存在于堆中,因为其他一些类/方法(如onClickListener)持有其引用,这显然会导致内存泄漏。希望这能对你有所帮助。@xudshen那么,你当时是怎么解决的呢?您能给我们一些清晰地销毁这些引用的方法吗?请查看本文以查找内存泄漏: