我在RecyclerView中显示GIF。代码:
Glide.with(acitivity)
.load(url)
.placeholder(R.drawable.image_placeholder)
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.listener(listener)
.into(viewHolder.imageView);
如果我将包含此RecyclerView的Fragment保持打开状态,则应用程序将使用非常高的CPU(~40%)。如果我使用片段1-2分钟,手机会变热。 GIF是正常的吗?我在这里做错了吗?
答案 0 :(得分:3)
Github上Glide贡献者的回复。这就是他们所说的 -
高CPU消耗是正常的。 Glide这样做是为了节省记忆,最终是邪恶的OOM Exceptions。
建议 -
- 使用静态
Bitmap
图片进行预览,避免自动播放。- 在
上使用超时或setLoopCount
GlideDrawable/GifDrawable
醇>
更多:https://github.com/bumptech/glide/issues/1029
编辑:
如果您使用的是ViewPager,请检查此问题:https://github.com/bumptech/glide/issues/1028