android - 关于glide+recyclerview默认读取缓存
PHPz
PHPz 2017-04-17 17:44:58
0
2
526

如上问题,关于glide+recyclerview默认读取缓存,导致刷新时,即使对方更新了头像但是url还是原来url,就会去默认读取缓存,设置signature后,问题是解决了,但接着每次都会去刷新头像,缓存的意义就没有了,求解!

 Glide.with(context)
            .load(uri)
            .diskCacheStrategy(DiskCacheStrategy.ALL)
            .crossFade()
            .signature(new StringSignature(UUID.randomUUID().toString()))
            .into(view);
PHPz
PHPz

学习是最好的投资!

répondre à tous(2)
Ty80

Si vous souhaitez obtenir un nouvel avatar uniquement après que l'utilisateur a mis à jour l'image, le problème clé est de faire savoir à l'application que le cache d'image correspondant à l'URL n'est pas valide
Vous devez donc commencer par les paramètres mis en cache. dans l'en-tête de la réponse renvoyée par l'URL .

Si vous utilisez une interface fournie par un tiers, vous n'avez d'autre choix que de choisir de mettre à jour l'image à chaque fois sans mise en cache, ou de la compromettre et de la mettre à jour de temps en temps
Si vous le pouvez. modifiez-le, récupérez-le Pour l'interface de l'avatar, il est recommandé à la personne qui écrit l'interface d'ajouter des informations de cache pour invalider le cache client lors de la mise à jour de l'avatar.

左手右手慢动作

Glide détermine s'il faut charger le cache ou effectuer une nouvelle demande en fonction de l'URL. Si votre URL reste inchangée mais que le contenu de l'image change rapidement, il est préférable de désactiver la mise en cache

.
.skipMemoryCache( true )
.diskCacheStrategy( DiskCacheStrategy.NONE )
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal