此方法只能从测试或私有范围内访问...(Ctrl + F1) 此检查查看已使用各种支持注释(例如RequiresPermission或UiThread)注释的Android API调用,并标记未按注释指定的任何未正确使用API的调用。此检查标记的错误示例: 将错误类型的资源整数(例如R.string)传递给期望不同类型的API(例如R.dimen)。 忘记在需要它的方法中调用重写方法(通过super) 调用需要权限的方法,而无需在清单中声明该权限 将资源颜色引用传递给需要RGB整数值的方法。
https://discussions.udacity.com/t/uri-downloadurl-tasksnapshot-getdownloadurl/232533?u=tahirs95
答案 0 :(得分:1)
我知道为时已晚,但我的回答仍然可以帮助2018年6月1日之后遇到此问题的人... 因为Firebase已在2018年6月1日之后更改了其政策和某些功能。以前下载uri的方法将为您提供您不想要的东西。
尝试
{{1}}
希望这对您有帮助!
答案 1 :(得分:0)
试试此代码
@SuppressWarnings(" VisibleForTests")Uri downloadUrl = taskSnapshot.getDownloadUrl();
答案 2 :(得分:0)
这应该工作!!
Uri downloadUrl = taskSnapshot.getResult().getDownloadUrl();
答案 3 :(得分:0)
Uri downloadUrl = taskSnapshot.getStorage().getDownloadUrl();
更改变量名称:
Task<Uri> downloadUrl = taskSnapshot.getStorage().getDownloadUrl();
它将起作用。
答案 4 :(得分:-1)
由于您使用的是10.0.1版 这样做,以便它可以工作
@SuppressWarnings("VisibleForTesting") Uri downloadUrl = taskSnapshot.getDownloadUrl();
答案 5 :(得分:-1)
方法getDownloadUrl()
返回一个任务。
只需更改
Uri downloadUrl = taskSnapshot.getStorage().getDownloadUrl();
到
Task<Uri> downloadUrl = taskSnapshot.getStorage().getDownloadUrl();