FirebaseStorage.instance.ref()为空
我想在我的Flitter应用程序中显示存储在Firbase存储中的图像,但我正在处理这个问题。我按照说明进行操作,但我的FirebaseStorage.instance.ref()为空,firebase,flutter,firebase-storage,Firebase,Flutter,Firebase Storage,我想在我的Flitter应用程序中显示存储在Firbase存储中的图像,但我正在处理这个问题。我按照说明进行操作,但我的ref()总是这样: 我创建此方法只是为了测试,当我尝试获取下载URL时,颤振会抛出一个异常: /颤振(4664):══╡ 图像资源服务捕获到异常╞════════════════════════════════════════════════════ I/Flatter(4664):解析图像编解码器时引发以下错误: I/flatter(4664):参数无效:URI中未指定主
ref()
总是这样:
我创建此方法只是为了测试,当我尝试获取下载URL时,颤振会抛出一个异常:
/颤振(4664):══╡ 图像资源服务捕获到异常╞════════════════════════════════════════════════════
I/Flatter(4664):解析图像编解码器时引发以下错误:
I/flatter(4664):参数无效:URI中未指定主机file:///Instance%20of%20“未来”
以下是图像信息:
因此,如果有人能帮助我,我会非常高兴:)我想你想删除
as String
的演员阵容。现在,你要把它应用到结果上。这肯定是不对的。您希望等待它返回的未来,而不是该对象的字符串版本。请注意,您试图用Uri.parse()
解析的是“file:///Instance%20of%20“未来”-参见“未来实例”一词
此外,您还可以临时删除
Uri.parse()
,只需了解getDownloadUrl()返回的将来包含的值。一旦您理解了返回值,并且可以看到它包含您想要的内容,然后尝试对其执行其他操作。我想您希望删除as String
强制转换。现在,你要把它应用到结果上。这肯定是不对的。您希望等待它返回的未来,而不是该对象的字符串版本。请注意,您试图用Uri.parse()
解析的是“file:///Instance%20of%20“未来”-参见“未来实例”一词
此外,您还可以临时删除
Uri.parse()
,只需了解getDownloadUrl()返回的将来包含的值。一旦您理解了返回值,并且可以看到它包含您想要的内容,然后尝试对其执行其他操作。我只是尝试重现该问题,但不知怎的,这段代码对我来说很好:
var earringsRef = FirebaseStorage.instance.ref().child("EARRINGS.JPG");
var downloadURL = await earringsRef.getDownloadURL();
print(downloadURL);
var url = Uri.parse(await earringsRef.getDownloadURL() as String);
print(url);
两行打印相同的URL:
颤振:
颤振:
我只是想重现这个问题,但不知怎么的,这段代码对我来说很好:
var earringsRef = FirebaseStorage.instance.ref().child("EARRINGS.JPG");
var downloadURL = await earringsRef.getDownloadURL();
print(downloadURL);
var url = Uri.parse(await earringsRef.getDownloadURL() as String);
print(url);
两行打印相同的URL:
颤振:
颤振:
基于您共享的代码,我无法重现该问题。我在下面发布了代码及其输出。你确定你的Firebase项目在你的应用程序中已正确初始化吗?根据你共享的代码,我无法重现该问题。我在下面发布了代码及其输出。你确定你的Firebase项目在你的应用程序中正确初始化了吗?我用
String s=wait ref.getDownloadURL()替换了最后一行代码>和工作良好。谢谢我用String s=wait ref.getDownloadURL()替换了最后一行代码>和工作良好。谢谢