android - Firebase Cloud Firestore 不返回数据或错误
问题描述
我正在学习使用 Firebase Firestore,并创建了一个我想在我的应用中显示的项目列表。尝试加载列表时,我没有收到数据,但也没有收到任何错误。我无法在日志中显示数据。会发生什么?
fun getDriverData(): LiveData<MutableList<Driver>> {
val mutableData = MutableLiveData<MutableList<Driver>>()
FirebaseFirestore.getInstance().collection("drivers").get().addOnSuccessListener { result ->
val listData = mutableListOf<Driver>()
Log.i("repo","called")
for (document in result) {
val photoUrl = document.getString("photoUrl")!!
val name = document.getString("name")!!
val team = document.getString("team")!!
Log.i("repo", "${document.id}} => ${document.data}")
val driver = Driver(name,team,photoUrl)
listData.add(driver)
}
mutableData.value = listData
}.addOnFailureListener {
Log.i("repo", "getDriverData: ${it.message}")
}
return mutableData
}
解决方案
您的收藏实际上称为“驱动程序” - 带有引号。无论在此处生成文档,都是在构建集合名称时使用额外配额。
您可以通过添加这些引号来阅读它们:
FirebaseFirestore.getInstance().collection("\"drivers\"").get()
但是您可能希望修复生成文档的代码以不添加这些引号。
推荐阅读
- c++ - 在 OS X 上使用 c++ 链接问题
- android - 来自 react-native 的推送通知出错
- reactjs - 如何在单个项目中使用多个版本的 Apollo 客户端
- python - 获取字符串中另一个元素之后的元素
- c# - 从 .net core 2.2 迁移到 .net core 3.0 后出现包错误
- python - 将 cmap 设置为 Matplotlib PatchCollection
- python - 使用 Python 抓取 Json 数据中的特定项目
- python-3.x - 如何使用 django ORM 在外键字段上加入多个模型?
- python - 如何使用数组为散点图中的簇着色?
- linux - 如何将我的命令历史记录到 shell 变量中?