2017-02-13 67 views
1

只是一个简短的消息,询问您如何将图片网址存储在Firebase数据库中供以后使用。 让我解释一下:Firebase:存储多个图片网址的最佳方法

我使用Firebase存储来存储图像,但将其各自的URL存储在Firebase数据库中,与Firebase存储分开存储(正如我一直在这里阅读的,这是它的方式)。
因此,在Firebase数据库中,我有一个“ItemPictures”节点,我想要为每个项目最多存储5个图片URL。

但我不知道什么是存储在同一项目的多个图像的URL的最佳方式:
- 创建使用推()(随机ID的列表,然后有管理手动删除picture'sURL当它得到更新时)。
- 创建一个包含5个URL的“图片”对象字符串值,使其更容易定位和导航。

事情是,稍后我将需要这些URL来填充5张图片的查看传呼机。

干杯,

安迪

+0

http://stackoverflow.com/a/13957446/7012517参考你的问题..! – Shobhit

+0

Thx您的评论。 我可能忘记说上传图片,检索并存储他们的URL不是问题。 我的问题是更多关于如何在Firebase中构建这些网址以便于使用 –

+0

如果您不想访问与对象分离的图像,Hasan shaikh answer是最好的。为了您的解释,似乎它应该与它一起工作,并且如果由于某种原因,您在查看对象详细信息之前已经有了一个列表,那么您可以使用具有相同对象的节点,但是减少的数据文档有一个关于非规范化的简单示例(复制数据)https://firebase.google.com/docs/database/web/structure-data – cutiko

回答

1

使用ArrayList的将是一个更好的

ArrayList<String> images = new ArrayList<>(); 
       images.add("img1url"); 
       images.add("img2url"); 
       images.add("img3url"); 
       images.add("img4url"); 
       images.add("img5url"); 
0

最简单的方法是在每个图像对象存储与唯一的密钥和里面有值的五把钥匙分别为1,2,3,4,5。

firebaseSnapshot.val().ID.1; 
 
firebaseSnapshot.val().ID.2; 
 
firebaseSnapshot.val().ID.3; 
 
firebaseSnapshot.val().ID.4; 
 
firebaseSnapshot.val().ID.5;

为了进一步提高性能,你可以索引他们要在成长数字越大图像ID:然后你就可以很容易地通过ID获取特定图像所需的URL。这在以下问题中已经完成。

enter link description here

相关问题