当QuerySnapshot在Firestore中的addSnapshotListener中为null时

时间:2018-09-08 11:03:03

标签: android firebase kotlin google-cloud-firestore

在更新Firestore库之后,我注意到QuerySnapshot?可以为空。
我不知道快照何时可以为null,以及使用!!运算符是否安全还是我需要处理null大小写。

即。使用此代码安全吗?

fireStoreRef
        .addSnapshotListener(this) { snapshot: QuerySnapshot?, e: FirebaseFirestoreException? ->
            if (e == null) {
                snapshot!!.toObject()
            }else{
                // handle error
            }
        }

1 个答案:

答案 0 :(得分:0)

仅当FirebaseFirestoreException不为null时,QuerySnapshot才为null。

因此,如果您像文档中的示例一样检查错误是否为null,则可以使用!!运算符。

docs

  

onEvent将使用新值或错误(如果发生错误)进行调用   发生。 保证价值或错误中只有一个是   非空。