List<String> uniNames = new ArrayList<>();
FirebaseFirestore db = FirebaseFirestore.getInstance();
CollectionReference unisRef = db.collection("Universities");
unisRef.get().addOnCompleteListener(task -> {
if(task.isSuccessful()) {
for (QueryDocumentSnapshot document : task.getResult()) {
uniNames.add(document.getString("name"));
}
} else {
Log.d("MainActivity", "Error getting documents: ",
task.getException());
}
});
我正在尝试从大学集合中的文档中获取字段名称的所有值,但.get()似乎根本没有执行。 它很好地连接到数据库,并且我得到一个collectionreference对象,但是.get()只是被完全跳过了,所以我最终得到一个空的List。 我使用不完整的侦听器是错误的还是缺少一些琐碎的东西?
答案 0 :(得分:0)
检查从日志中获取的错误
如果是 PERMISSION_DENIED 错误,请从Firebase控制台检查您的规则。
如果规则还可以,请确保使用正确的字符串引用集合。 请记住,firebase集合引用是区分大小写的。