【Kotlin】Firestoreで複数のタスクが成功したときにリスナーを呼ぶ


FirestoreやFirestrageで同時に複数の処理を行う

【taskA】 FirestoreからドキュメントAを取得する
【taskB】 FirestoreからドキュメントBを取得する
といった2つのタスクを同時に行うとします。
このタスクAとBの両方が成功したときに、printlnします。

タスクの取得

データを取得するときにタスクが返されます。

val taskA = db.collection("user").document("A").get()
val taskB = db.collection("user").document("B").get()

両方のタスクが成功した時に呼ばれるリスナー

Tasks.whenAllSuccess<Any>(taskA, taskB)
    .addOnSuccessListener{
        println("両方のタスクが成功しました")
    }

これで両方のタスクが成功するとプリントされます。

.addOnFailureListener
.addOnCompleteListener
も同じようにして呼び出すことができます。