检查Firebase是否已完成向数据库中添加项目

时间:2018-07-16 21:02:59

标签: android firebase firebase-realtime-database

我正在将数据从我的Android应用发送到实时Firebase数据库。

我想检查firebase何时将这些项目添加到数据库中,因为我将在服务器上调用脚本(该脚本通过asynctask)来访问数据库中的数据。

但是在调用脚本之前,我需要确保Firebase已完成添加所有项,以避免数据中的任何冲突。该代码将是这样的:

myRef.child(userID).setValue(items); //add items to firebase database

new SendPostRequest().execute(); //call script on the server that will connect 
                                    to firebase database and retrieve data. 

我想知道在firebase向数据库添加数据时是否会调用脚本,因此它将检索部分数据,因此我需要确保firebase首先完成了将项目添加至数据库的操作。

1 个答案:

答案 0 :(得分:2)

您可以将完成监听器添加到setValue()中,以在呼叫完成时得到通知。

有关完整示例,请参见Firebase文档中的add a completion callback部分。

mDatabase.child("users").child(userId).setValue(user)
    .addOnSuccessListener(new OnSuccessListener<Void>() {
        @Override
        public void onSuccess(Void aVoid) {
            // Write was successful!
            // ...
        }
    })
    ...