我想学习在Cloud Firestore上添加,插入,更新和删除。 我已经阅读了Cloud Firestore文档,但是我不了解它,因为我对Could firestore真的很陌生,我才开始学习android studio。
我已经使构造函数和计划使用ListView读取数据,并使用意图使setOnLongClickListener上的Delete和Update变得更容易。而且我将另一个活动用于添加功能。
我遇到的大多数教程都把它们放在一个地方,这使得它很难理解。 混合我从不同资源获得的代码,使代码更难以理解,而且看起来很奇怪。
那么使用此数据库执行此操作的简单易懂的代码是什么?
答案 0 :(得分:0)
如果要使用Firebase Android SDK将数据发布到服务器,则应该要求用户身份验证,然后服务器上的firebase.rules
应该检查呼叫者的访问级别正确。 / p>
获取
的FirebaseFirestore
的实例
private val firestore: FirebaseFirestore
get() = FirebaseFirestore.getInstance()
文档始终遵循模式document/collection/document/collection/...
示例val docName = "animalDoc/mammalCollection/rodentDoc/miceCollection/JerryDoc
获取所有小鼠:
firestore.collection("animalDoc/mammalCollection/"
+"rodentDoc/miceCollection").get()
.addOnSuccessListener { result -> //result is just a Kotlin collection
val myFavoriteMouse = result.find { it["name"] == "Jerry" }
// do something with Jer
}
设置鼠标
val docName = "animalDoc/mammalCollection/rodentDoc/miceCollection/JerryDoc"
firestore.document(docName).set(mapOfData).addOnCompleteListener {
if (it.isSuccessful) {
// log your success or whatever
} else {
// log your failure or whatever
}
}
更新鼠标
val docName = "animalDoc/mammalCollection/rodentDoc/miceCollection/JerryDoc"
val docRef = firestore.document(docName)
firestore.runTransaction { transaction ->
transaction.update(docRef, "color", "brown")
}
删除鼠标
val docName = "animalDoc/mammalCollection/rodentDoc/miceCollection/JerryDoc"
firestore.document(docName).delete()