Методы получения UID Firebase в Kotlin для аутентификации пользователя

Чтобы получить UID Firebase в Kotlin, вы можете использовать следующие методы:

Метод 1: использование аутентификации Firebase

val currentUser = FirebaseAuth.getInstance().currentUser
val uid = currentUser?.uid

Метод 2. Использование базы данных Firebase Realtime

val firebaseDatabase = FirebaseDatabase.getInstance()
val currentUser = FirebaseAuth.getInstance().currentUser
val uidRef = firebaseDatabase.getReference("users/${currentUser?.uid}/uid")
uidRef.addListenerForSingleValueEvent(object : ValueEventListener {
    override fun onDataChange(snapshot: DataSnapshot) {
        val uid = snapshot.getValue(String::class.java)
        // Use the uid here
    }
    override fun onCancelled(error: DatabaseError) {
        // Handle the error here
    }
})

Метод 3. Использование Firebase Cloud Firestore

val firebaseFirestore = FirebaseFirestore.getInstance()
val currentUser = FirebaseAuth.getInstance().currentUser
val userRef = firebaseFirestore.collection("users").document(currentUser?.uid.toString())
userRef.get().addOnSuccessListener { documentSnapshot ->
    if (documentSnapshot.exists()) {
        val uid = documentSnapshot.getString("uid")
        // Use the uid here
    } else {
        // Document does not exist
    }
}.addOnFailureListener { exception ->
    // Handle the exception here
}