如何使用Android更新Firestore中的数组元素?

时间:2018-09-12 13:28:44

标签: java android firebase google-cloud-firestore

我读过这个post和这个post的同一个人,说你不能更新数组元素。

我还阅读了最近的article,据说可以用arrayUnion或类似方法完成此操作,但是我在文档中都无法获得有关stackoverflow的任何信息。

有什么办法可以解决这个问题?谢谢!

1 个答案:

答案 0 :(得分:7)

实际上,写出这些答案的“家伙”是我:)那时,还没有一种方法可以更新数组元素。只能存储数组,而不能更新数组成员。

现在,在更新文档时,您可以将第二个参数传递给update()方法:

FieldValue.arrayUnion("newArrayValue")

您可以在官方文档中找到有关update elements in an array的更多信息。

  

如果文档包含数组字段,则可以使用arrayUnion()和arrayRemove()添加和删除元素。 arrayUnion()将元素添加到数组,但仅不存在的元素。 arrayRemove()删除每个给定元素的所有实例。

P.S。我还将更新这些答案。