我正在将数据从android应用程序发送到实时firebase数据库。
我想检查firebase何时完成将这些项目添加到数据库中,因为我将在服务器上调用一个脚本,该脚本将访问数据库中的数据(通过异步任务(。
但在调用脚本之前,我需要确保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首先完成了向数据库中添加项目的操作。
您可以向setValue()
添加一个完成侦听器,以便在调用完成时得到通知。
有关完整示例,请参阅Firebase文档中的添加完成回调一节。
mDatabase.child("users").child(userId).setValue(user) .addOnSuccessListener(new OnSuccessListener<Void>() { @Override public void onSuccess(Void aVoid) { // Write was successful! // ... } }) ...