如何从Firebase存储中删除整个文件-Flutter

时间:2020-09-25 17:06:52

标签: firebase flutter

这是我的数据库的样子: enter image description here

我想删除该文件上的所有内容。

这是我到目前为止尝试过的:

FirebaseStorage.instance.ref().child("User ($uid)/ads").delete();
FirebaseStorage.instance.ref().child("User ($uid)/ProfilePic").delete();

第二行删除ProfilePic,但第一行返回错误。
我是火力发抖的新手,所以请多多包涵。

1 个答案:

答案 0 :(得分:1)

没有Firebase API可以删除带有特定前缀的所有文件,即您在控制台中某个文件夹中看到的文件。

一种实现此目的的方法是使用listAll()方法来提取具有特定前缀的所有文件,并在以后分别删除它们。

颤振Firebase存储listAll()方法当前在软件包dev的版本5.0.0-dev.1中可用,您可以如下使用:

firebase_storage.ListResult result =
      await firebase_storage.FirebaseStorage.instance.ref().listAll();

使用listAll()之后,您将获得所有文件,然后可以分别删除它们。

此外,您还可以删除后端服务器上的文件。