android - Firestore 返回的文档较少
问题描述
因此,在我的 android 应用程序中,我通过以下代码从集合中获取所有文档:
log("Player Listener Started")
FirebaseFirestore.getInstance().collection("players")
.limit(4)
.addSnapshotListener { querySnapshot, firebaseFirestoreException ->
log("Player Listener firestore exception message ${firebaseFirestoreException?.localizedMessage}")
if (firebaseFirestoreException == null) {
querySnapshot?.documents!!.forEach {
val serverPlayer = it.toObject(Player::class.java)!!
snapshotPlayers.add(serverPlayer)
}
log("Player numbers : ${snapshotPlayers.size}")
我在数据库的“玩家”集合中有 4 个文档:
但它总是只返回 1 个文档,即“Sheetal”。请检查上述代码中的日志:
这个确切的代码在一小时前运行良好,我得到了所有 4 个用户。我从控制台清除了数据库并使用我的应用程序重新创建了这些文档,此代码未返回 4 个文档。
Player
班级 :
class Player(
var name: String = "",
var gameId: String = "",
var currentCard: Card = Card(),
var cardList: ArrayList<Card> = ArrayList(),
var made: String = "0",
var expected: String = "0",
var message: String = "",
var order: Int = 0,
var turn: Int? = null
)
Player
数据库中的文档内容
我尝试了这些东西,但仍然得到相同的结果:
- 手动清除我的应用缓存
- 使用清除 Firestore 持久性数据
FireDB.db.clearPersistence()
这是我在 Firestore 的第一个项目,所以我不知道我做错了什么。请帮我。
解决方案
推荐阅读
- javascript - Nodemon 安装不正确
- java - 如何计算(O)N中的最高和
- mysql - 迁移文件必须在 Sequelize 中吗?
- c# - 如何将自动注册的 Windows 服务 EventLog 属性注册到除应用程序日志之外的另一个日志?
- unity3d - 锯齿状边缘 SkyBox 实时
- node.js - 如何模拟一个被另一个函数调用的函数?
- android - 我可以在 Android Studio 中为选项菜单使用数据绑定吗?
- dart - 修饰符 async 不能应用于 setter 的主体
- python - jsons数组的Pydantic模型
- visual-studio-code - 尽管存在 eslint 文件并且设置设置为在保存时修复,VSC 不会格式化代码