播放GIF时CPU使用率很高

时间:2016-03-04 19:57:41

标签: android gif android-glide

我在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是正常的吗?我在这里做错了吗?

1 个答案:

答案 0 :(得分:3)

Github上Glide贡献者的回复。这就是他们所说的 -

  

高CPU消耗是正常的。 Glide这样做是为了节省记忆,最终是邪恶的OOM Exceptions。

建议 -

  
      
  1. 使用静态Bitmap图片进行预览,避免自动播放。
  2.   
  3. setLoopCount
  4. 上使用超时或GlideDrawable/GifDrawable   

更多:https://github.com/bumptech/glide/issues/1029

编辑:

如果您使用的是ViewPager,请检查此问题:https://github.com/bumptech/glide/issues/1028