Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从“创建firebase存储引用”;gs";字符串格式的url_Firebase_Kotlin_Firebase Storage - Fatal编程技术网

从“创建firebase存储引用”;gs";字符串格式的url

从“创建firebase存储引用”;gs";字符串格式的url,firebase,kotlin,firebase-storage,Firebase,Kotlin,Firebase Storage,通过将引用本身转换为字符串,我在firebase数据库中存储了一个firebaseStorageReference,在尝试使用“.getInstance”方法从其字符串版本重新创建引用时,出现以下错误 错误:java.lang.IllegalArgumentException:存储Uri不能包含path元素。 存储引用本身(已转换为字符串):val personalstorageref=FirebaseStorage.getInstance().getReference().child(${au

通过将引用本身转换为字符串,我在firebase数据库中存储了一个firebase
StorageReference
,在尝试使用“.getInstance”方法从其字符串版本重新创建引用时,出现以下错误

错误:
java.lang.IllegalArgumentException:存储Uri不能包含path元素。

存储引用本身(已转换为字符串):
val personalstorageref=FirebaseStorage.getInstance().getReference().child(${auth.currentUser!!.email}/Posts/${filename}”)

数据库内部的存储引用字符串版本:
gs://stnok-25330.appspot.com/hell%20gmail.com/Posts/d1dad470-25ad-3ffb-q422-22cca5e5596o

我试图从gs路径创建存储引用的方式:
var refurl=FirebaseStorage.getInstance(listset.refslist[I])。reference

关于我试图从gs路径创建存储引用的方式,需要注意的几点是:对象
listset
包含一个gs路径的可变列表,它是
refslist
i
是一个Int

我见过类似的问题,但没有一个适合我的用例

编辑: 我尝试使用getReferencefromurl方法,该方法返回错误:java.lang.IllegalArgumentException:无法解析存储Uri


数据库中的url 100%存在。

FirebaseStorage。getInstance(String)
用于为作为参数给定的bucket构造FirebaseStorage对象实例。错误消息告诉您,gs URL不能有路径组件(只有bucket名称)。它不用于转换gs文件路径

相反,您可能只想:

  • 使用不带参数的
    getInstance()
    获取普通FirebaseStorage实例
  • 调用并传递完整的gs URL以获取指向该文件的StorageReference

  • 如果有人在javascript领域偶然发现这个问题,出于某种原因,函数名是不同的。它将改为
    storage.refFromURL()