程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Google Firestore 保存用户输入 Kotlin大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Google Firestore 保存用户输入 Kotlin?

开发过程中遇到Google Firestore 保存用户输入 Kotlin的问题如何解决?下面主要结合日常开发的经验,给出你关于Google Firestore 保存用户输入 Kotlin的解决方法建议,希望对你解决Google Firestore 保存用户输入 Kotlin有所启发或帮助;

这个问题我已经有一段时间了。我有 3 个 inputEditText,它们要求用户输入他们的名字、姓氏和 ID。我想将此信息保存到 Google firestore 中。我已经设置了所有依赖项,并且我知道我已将其正确连接到 Google firebase。我发现的问题是关于这个主题的每个教程都彼此不同,而且我能找到的每个教程都不能 100% 运行。有没有办法将这 3 个值保存到 Google firestore in kotlin 中,并有办法在另一个活动中检索这些值?

解决方法

这个问题我已经有一段时间了。我有 3 个 inputEditText,要求用户输入他们的名字、姓氏和 ID。

要从这些 EditText 对象中获取数据,请使用以下代码行:

val firstName =  firstNameEditText.text.toString().trim()
val lastName =  lastNameEditText.text.toString().trim()
val id =  idEditText.text.toString().trim()

我想将此信息保存到 Firestore 中。

要将数据保存在 Firestore 中,最简单的解决方案是创建一个数据类:

data class User(
    var firstName: String? = null,var lastName: String? = null,var id: String? = null
)

创建类的对象:

val user = User(firstName,lastName,id)

并将其写入 Firestore:

val rootRef = FirebaseFirestore.geTinstance()
val usersRef = rootRef.collection("users")
usersRef.document(id).set(user).addOnCompleteListener(/* ... */)

这将产生以下数据库架构:

Firestore-root
  |
  --- users (collection)
       |
       --- $id
            |
            --- firstName: "Abrahim"
            |
            --- lastName: "Mahmud"
            |
            --- id: "userIdIntroducedFromKeyboard"

要读回数据,只需调用 get() 并附加一个侦听器,如下所示:

val uidRef = usersRef.document(id)
uidRef.get().addOnsuccessListener { doc ->
    if (doc != null) {
        val user = doc.toObject(User::class.java)
        Log.d(tag,"{$user.firstNamE} {$user.lastNamE}")
    } else {
        Log.d(tag,"No such document")
    }
}.addOnFailureListener { exception ->
    Log.d(tag,"get failed with ",exception)
}

logcat 中的结果将是:

Abrahim Mahmud

大佬总结

以上是大佬教程为你收集整理的Google Firestore 保存用户输入 Kotlin全部内容,希望文章能够帮你解决Google Firestore 保存用户输入 Kotlin所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。