Android 如何将数组附加到firestore中的数组字段中? 问题:
我有一个名为Android 如何将数组附加到firestore中的数组字段中? 问题:,android,firebase,google-cloud-firestore,Android,Firebase,Google Cloud Firestore,我有一个名为Users的集合,其中有一个名为friendEmails的字段,它是一个包含字符串的数组 我有一个friendemail={joe@gmail.com, dan@gmail.com},我想附加新电子邮件={mat@gmail.com, sharon@gmail.com}将其删除 问题 我知道的唯一选择是: 首先读取friendEmails数组,然后将其和newEmails的联合添加到文档中 迭代新电子邮件的元素(让我们和每次迭代都做: myCurrentDocumentRefere
Users
的集合,其中有一个名为friendEmails
的字段,它是一个包含字符串的数组
我有一个friendemail={joe@gmail.com, dan@gmail.com}
,我想附加新电子邮件={mat@gmail.com, sharon@gmail.com}
将其删除
问题
我知道的唯一选择是:
friendEmails
数组,然后将其和newEmails
的联合添加到文档中
新电子邮件的元素(让我们和每次迭代都做:
myCurrentDocumentReference.update(FieldValue.arrayUnion,singleStringElement);
(因为FieldValue.arrayUnion
只允许我传递逗号分隔的元素,我只有一个元素数组)
ArrayList newEmails=Arrays.asList(“mat@gmail.com", "sharon@gmail.com");
void appendNewArray(){
FirebaseFirestore=FirebaseFirestore.getInstance();
firestore.collection(“Users”).document(“userID”).update(“friendEmails”,FieldValue.arrayUnion(newEmails));
}
我遗漏了什么吗?这不是一个合理的操作吗
在没有所有不必要的读/写操作的情况下,我还能如何执行此操作
谢谢!您可以像这样将多个项目添加到数组字段中,并将其用作字段更新的值:
docRef.update("friendEmails", FieldValue.arrayUnion(email1, email2));
如果需要:
可以将以下项作为字段更新的值添加到数组字段中,如下所示:
docRef.update("friendEmails", FieldValue.arrayUnion(email1, email2));
如果需要:
我的问题是“解包”我现有的
newEmails
array以作为arrayUnion的参数传递。我该怎么做?请编辑问题以显示您正在使用的特定代码,并澄清关于哪些代码没有按您期望的方式工作的问题。我的问题是“解包”我现有的newEmails
array将作为arrayUnion的参数传递。我将如何处理?请编辑问题,以显示您正在使用的特定代码,并澄清关于哪些代码没有按预期方式工作的问题。