Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I had high hopes from Glide... it turns out, it's no better than picasso #1008

Closed
daviddayag opened this issue Feb 27, 2016 · 4 comments
Closed
Labels

Comments

@daviddayag
Copy link

in fact it has more bugs than picasso.
it offers gif animations but with the amount of freesing / endless warning messages (Called reconfigure on a bitmap that is in use! This may cause graphical corruption!) / not loading images at all, it's just not worth it.
I tried 5 different versions.
using android 23.
using several devices (including nexus 5).
it's just not meant to run in a recycler view, it's just not stable enough like picasso.

@daviddayag
Copy link
Author

and worst of all, it takes as much memory as picasso.
and animated gifs cause list to run slower than running them with animationDrawable, and play with bad performance themselfs.
anyway, reverting back to picasso... sorry guys, I really hoped for a better solution.

@TWiStErRob
Copy link
Collaborator

Sad to see you go, here're a few things you might want to consider:

Please report those bugs you're talking about or comment on existing ones. If we don't know about it it's hard to fix them... this is your first interaction with Glide issues as far as I can see :(

Called reconfigure on a bitmap that is in use! This may cause graphical corruption!

See #743 (comment) and #743 (comment).

it takes as much memory as picasso

that's new... based on this article it should be better in most cases, or equal if you hard-code sizes... it highly depends on how you configure them. Do you have code/numbers to back this up?

animated gifs

You don't have to display animated gifs in a list, even giphy.com on a computer doesn't play all items at once... .diskCacheStrategy(SOURCE).asBitmap() to the rescue, and when the user taps on it you can reload the same url into the same view without the .asBitmap() to start playing the animation.

@daviddayag
Copy link
Author

Thanks for the quick reply!
the thing is that up until now i used a simple library to transform animated gifs to animatedDrawable and cached them in memory for fast display and it worked pretty well.
Uses some memory in the process and the code isn't very pretty but it works.
I thought Glide will give a better solution, provided that it utilizes a better caching mechanism.
but all these issues above got me reverting back.
I think i'll wait until Glide is more mature, or until someone develop a better way to display images / gifs in a feed. (like google plus for example - performance there is amazing)

@TWiStErRob
Copy link
Collaborator

Yes, I agree you can't beat pre-decoded frames cached in memory, the Drawable just needs to draw them, however not all devices have that capability, for example did that solution work on a Galaxy S2 2.3.7 or even older/lowend phones? Glide decodes frames on the fly, only the GIF binary contents are cached in memory (so that it's seekable) and 2 frames at any time: 1 is displayed, and 1 is being loaded. By the way, nothing is stopping you from using Glide and integrate your AnimatedDrawable solution, it provides a framework for advanced configurability and that "isn't very pretty" will probably disappear (all the caching, threading, etc. should disappear), we solved a similar issue before: #805

Oh, and can you please list the bugs that you're referring to?
I can't see any actionable items here, that could be fixed with some commits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants