私がマスターをきれいにするには、グライド・ロード・イメージに私のアプリからのキャッシュディレクトリを変更したいcache.iを拭くために失敗した私のGlideModuleに変更グライド・ロード・画像キャッシュディレクトリ
builder.setDiskCache(new ExternalCacheDiskCacheFactory(context, "abbasali", cacheSize100MegaBytes * 5));
を使用しますがしかし、それは何の効果も行いません。
私がマスターをきれいにするには、グライド・ロード・イメージに私のアプリからのキャッシュディレクトリを変更したいcache.iを拭くために失敗した私のGlideModuleに変更グライド・ロード・画像キャッシュディレクトリ
builder.setDiskCache(new ExternalCacheDiskCacheFactory(context, "abbasali", cacheSize100MegaBytes * 5));
を使用しますがしかし、それは何の効果も行いません。
Glide
を設計することにより、キャッシュへのアクセスを直接サポートしていません。 Cache
は、あなたがそれについて知っている必要はありません。つまり、透明ストレージです。またGlide
でキャッシングがキーとしてだけurl
よりもはるかに細かい粒度です。
だから、解決策は、通常はロードすることで、それはそれがありますならば、キャッシュからロードされたそれ以外の場合は、ダウンロードしてからロードされます。キャッシュされる内容の詳細については、.diskCacheStrategy()
を参照してください。
Glide.with(context)
.load(image_url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageView);
あなたがを使用している場合は、オフラインでそれを必要とするとき(ALL
に含まれる)元の画像は、電話、おそらく利用可能に格納されます。キャッシュは常にnetwork
に行く前に相談されます。ここ
はGlideModuleが適切に設定さず、初期化されてしまったGlide
https://groups.google.com/forum/#!topic/glidelibrary/TcFOy0tcxXA
を使用して
DiskCache
からロードする画像のサンプルコードですか?つまり、あなたのsetDiskCacheへの呼び出しは呼び出されますか? – yosrizが今の私のイメージのキャッシュが/データ/ myPakacgeName/chache/abbasaliアンドロイドである/ –
グライドは、新しいものに優先して、既存のキャッシュを使用します。したがって、この変更の前に既にアプリを実行している場合は、内部キャッシュが使用されます。内部キャッシュを削除するには、Androidアプリの[設定]メニューからアプリキャッシュ設定をクリアするだけです。 –