使用滑动清理Firebase缓存

时间:2017-04-13 16:27:38

标签: android firebase firebase-storage android-glide

我正在使用firebase来存储与用户配置文件相关的图像,并且当前正在发生一些真正发生的事情,我在我的drawable中有一个默认图像,它显示在每次我的firebase存储引用为空时的imageview中,否则它将使用滑动来显示图像,但我删除了我在firebase的所有存储,并且它显示了我在数据库中的图像,为什么会发生这种情况?那与手机上的localStorage有关吗?我怎么能删除它?

    storageRef = storage.getReferenceFromUrl("gs://friendlymanager-3b7a2.appspot.com/Photos/" + userId);


Uri path = Uri.parse("android.resource://com.esmad.pdm.friendlymanager/" + R.drawable.defaultuserimage);
Log.d("image2",storageRef + "/Photos/" + userId + ".jpg");
if(storageRef != null){
    Glide.with(this)
            .using(new FirebaseImageLoader())
            .load(storageRef)
            .error(R.drawable.defaultuserimage)
            .into(userImage);
}
else{
    userImage.setBackgroundResource(R.drawable.defaultuserimage);
}

1 个答案:

答案 0 :(得分:0)

尝试禁用磁盘和内存缓存:

    Glide.with(this)
            .using(new FirebaseImageLoader())
            .load(storageRef)
            .diskCacheStrategy(DiskCacheStrategy.NONE) // <= ADDED
            .skipMemoryCache(true) // <= ADDED
            .error(R.drawable.defaultuserimage)
            .into(userImage);

<强>加了:

测试storageRef for null不能用于确定数据是否存储在该位置。您只能通过尝试加载数据或其元数据来确定某个位置是否存在数据。