2016-10-15 3 views
-1

Ich verwende Glide und möchte geladene Bilder im lokalen Speicher zwischenspeichern.Caching mit Glide

Ich suchte nach dem gleichen und fand heraus, dass Bilder automatisch zwischengespeichert werden. Sie müssen nur die selbe loadURL bereitstellen, und Glide sucht nach dem Bild (zusammen mit anderen bereitgestellten Attributen: Auflösung, Schlüssel usw.). Das Problem, mit dem ich konfrontiert bin, ist, dass ich weiß, was die loadURL zum Zeitpunkt der ersten Ressourcenbelastung sein wird. Wenn die App jedoch die zwischengespeicherte Kopie laden möchte, enthält sie keine loadURL-Informationen. Wie kann ich zwischengespeicherte Bilder laden, ohne loadURL bereitzustellen (was zum Zeitpunkt des erstmaligen Ladens gleich war). Kann ich einen beliebigen Schlüssel (z. B. StringKey) verwenden, der dem Bild beim ersten Laden zugeordnet werden kann, und denselben Schlüssel (ohne loadURL) zum Zeitpunkt des Ladens der zwischengespeicherten Kopie verwenden? Vielen Dank.

Antwort

0

Glide unterstützt den direkten Zugriff auf den Cache nicht. Behalten Sie die URL also beim ersten Mal bei und verwenden Sie sie später, um das zwischengespeicherte Bild zu laden.

Zum ersten Mal: ​​

Glide.with(this).load(url).into(image); 
    save(url); 

Später:

String url = getUrl(); 
    Glide.with(this).load(url).into(image);