文档引用在集合引用上必须具有偶数个段错误

时间:2018-07-05 15:42:08

标签: android firebase google-cloud-firestore

我遇到了一个非常简单的错误:

Document references must have an even number of segments.

我知道它在告诉我什么以及如何解决它,但是在收藏参考中却给了我这个错误。

CollectionReference collectionReference = getFirebaseInstance()
.collection(Constants.USERS)
.document(userId)
.collection(Constants.CONTACTS);

在我的数据库中,路径为(集合)<文档>(集合)<文件>我正在尝试获取用户在users / {id} / contacts的所有联系人,但这只是抛出此错误,有什么想法吗?

getFirebaseInstance是我创建的一种始终获取当前值的方法

FirebaseFirestore.getInstance();

2 个答案:

答案 0 :(得分:2)

您的userId变量中可能带有斜线。文档ID不能带有斜线,因为在形成文档的“路径”时,它们被理解为集合和文档之间的分隔符。

字符串也可能为空,这是无效的。

答案 1 :(得分:1)

因为以上和其他类似的帖子都没有帮助我。

在调用set数据时,然后在.getDocument(...)之后(即读取数据),我立即收到此错误。当我在setData方法的完成处理程序中调用读取数据方法时,错误消息消失了。