ImageView.setImageResource(resId) OOM和滑动卡顿,问题的解决!

本文主要探讨了ImageView.setImageResource(resId)可能导致的内存溢出(OOM)和滑动卡顿问题。通过Bugly捕获到的错误,作者介绍了两种解决方案:一是使用图片加载框架,如Glide或Picasso,以避免内存溢出和提高性能;二是通过网络在线压缩图片,转换为更小的jpg格式,并调整图片格式为RGB-565,进一步减少内存占用。这两种方法都能有效改善用户体验。
摘要由CSDN通过智能技术生成
最近一些用户的老手机 出现加载引导页的时候,滑动界面卡顿和OOM闪退的问题
Failed to allocate a 74649612 byte allocation with 16777216 free bytes and 70MB until OOM

com.wcyq.gangrong.ui.activity.NewGuideActivity$GuidPagerAdapter.instantiateItem(NewGuideActivity.java:105)

之前测试公司的测试机测试一直也没有出现这种问题.

通过bugly 捕捉到了这个错误;

市面上的解决办法,我所知道的有两种:

  第一种,弃用  

imageView.setImageResource(resId)

采用图片加载框架进行加载,解决内存溢出和卡顿问题:

代码如下:

Glide.with(mContext).load(resId).placeholder(resId).diskCacheStrategy(DiskCacheStrategy.RESULT).into(imageView);

或者:

   app.imageLoader.displayImage(
                    imageUrls.get(i), imageView, Utils.setImageLoaderImg(R.drawable.pic_launchpage_fail,R.drawable.pic_launchpage,0));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值