2017-09-29 14 views
-1

Android用およびFirebase用のGlideを使用しようとしています。Android Glideは画像の最新バージョンを取得しません

私のコードは完全に動作しています(アップロード、ImageViewsへのダウンロード)。私の問題は、Firebase Storage(例えば、ユーザイメージ)内のイメージを変更すると、データベース内のキャッシュされたバージョンが変更され、キャッシュされたバージョンが表示され続けます。

明らかに、私はアプリケーションがキャッシュを使用したいのですが、元の画像がデータベースで変更されているかどうかを知る方法で行います。

これを行う方法はありますか?ありがとう、

キャッシュがたかっていない場合

+0

画像を「変更する」ときにユーザーの画像を置き換えるか、単に新しい画像を追加するだけですか?後でデータベースの新しいイメージのパスを更新しますか? –

+0

ありがとう、私はイメージを置き換えて、別のパスに別のイメージを追加しません。 –

+0

URLが変更されていない場合は、画像が変更されたことをGlideが知っているかどうかはわかりません。 –

答えて

2

、あなたは

Glide.with(ctx) 
    .load(Uri)) 
    .diskCacheStrategy(DiskCacheStrategy.NONE) 
    .skipMemoryCache(true) 
    .into(mImage); 

を試すことができ、また、これはグライドで保存されているキャッシュメモリを削除します。

Glide.get(ctx).clearDiskCache(); 
+0

ありがとうございます。私はキャッシュを使用しようとしており、データベースのイメージが変更されたことを「理解」しています(元のパスで)。 –

+0

Firebaseで実行できるかどうかわかりませんが、URLパスが同じでもイメージを変更できます。この方法で新しいイメージがダウンロードされます – mbakgun

関連する問題