当前位置: 首页 > 知识库问答 >
问题:

Firebase存储-管理图像URL

杜辰龙
2023-03-14

我正在开发一款用于拍照的Android应用程序。首先,用户拍摄个人资料图片。此图像的Url保存在Firebase实时数据库中。用于检索以下下载URL的示例代码

Uri file = Uri.fromFile(new File("path/to/images/rivers.jpg"));
StorageReference riversRef = storageRef.child("images/"+file.getLastPathSegment());
uploadTask = riversRef.putFile(file);


uploadTask.addOnFailureListener(new OnFailureListener() {
    @Override
    public void onFailure(@NonNull Exception exception) {

    }
}).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
    @Override
    public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {

        Uri downloadUrl = taskSnapshot.getDownloadUrl();
    }
});

这个url被保存在数据库中的多个地方,我需要在那里加载用户的个人资料图片——他的每个帖子的条目,他给应用程序上其他人的消息,等等。

现在,如果他以后更改个人资料图片,我有以下两个选项

  1. 更新每个数据库条目-非常繁琐、暴力和资源密集

那么,有没有更好的方法将图像上传到Firebase存储并生成静态URL?

这种依赖性的原因是我正在使用毕加索和Glide加载图像,并且我需要url是静态的。

开箱即用的想法也很受欢迎,只要它们能以最少的努力解决我管理个人资料图片的问题。

共有1个答案

钮才哲
2023-03-14

我最终决定彻底废除URL。前缀为gs://code>的谷歌存储Uri是静态的。并且只能从应用程序内访问。因此,我决定使用本教程中的指导为gs://code>uri编写一个自定义的请求处理程序

现在,每次更新图片时,我都会覆盖原始文件,它会自动更新数据库中所有条目的所有链接的图像。

 类似资料:
  • 我要上传一张图片到firebase的存储器。我用的不是网页版存储(不应该用)。我正在使用firebase admin。没问题,我毫无困难地上传了文件,并在变量“file”中得到结果。 如果我访问firebase存储控制台,图像就在那里。好吧 现在,我有一些问题。 > < li> 为什么对< code>upload ()方法的响应有这么多信息和这么多对象?回顾这个巨大的对象,我在元数据中发现了一个名

  • 在firebase storage的web sdk中,您可以从Blob数据上载图像。我有一个nodeJS应用程序,想将blob数据中的图像上传到我的存储桶中。在文档中,如果运行节点服务器环境,建议使用AdminSDK。但我在firbase存储管理文档中找不到此功能。 这是我的密码:

  • 在我的应用中,我提示用户捕获图像。用户相机活动在按钮单击时开始,用户可以选择使用相机捕获图像。 此图像保存在用户手机上。然后将图像上传到firebase Storage,一切正常。来自一位使用三星Note 8的用户的反馈是,当图像以肖像模式拍摄时,他稍后会在应用程序中以风景模式显示。 我查看了firebase存储,发现图像以横向模式保存在存储中,即使用户以纵向模式捕获图像。 我想我必须将元数据传递

  • 我正在尝试让Firebase存储与Imgix或cloudinary这样的图像服务一起工作。然而,Firebase提供的下载URL似乎不能与这些服务一起工作。 例如:Cloudinary说您可以获取如下所示的图像: http://res.cloudinary.com/demo/image/fetch/http://upload.wikimedia.org/wikipedia/commons/0/0C

  • 我从Firebase存储中获取图像,用相机拍照,或者从图书馆中挑选一张。当其中一个完成时,我有一个类来存储,以便在需要时使用它。 现在我需要将此图像上传到Firebase存储(修改或新建,无所谓)。Firebase允许我使用以下选项之一:或,每个选项分别需要或。 我怎么能把我的,并从它获得一个或用于上传? -- 或者,为了解决这个问题,当我从Firebase存储中检索图像时,如何获取图像的? 无论

  • 下面是我得到的控制台输出和错误: 下面是我按下Get Images按钮后的控制台输出,您可以看到图像的url为: