在火基 addOnSuccessListener 方法将在应用程序处于联机模式时调用。但在脱机模式下不调用它。以下是我的代码:
addOnSuccessListener
mFirebaseDatabase.setValue(newAreaModel) .addOnSuccessListener(new OnSuccessListener<Void>() { @Override public void onSuccess(Void aVoid) { finish(); } }) .addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Toast.makeText(getApplicationContext(), "Something went Wrong!", Toast.LENGTH_SHORT).show(); } });
现在我想在什么时候完成活动 setValue() 方法在脱机模式下调用。
setValue()
有人能建议我怎么做吗?
当网络连接丢失(用户设备上没有网络连接)时,也 onSuccess() 也没有 onFailure() 方法被触发。这一直是Firebase实时数据库中的行为。只有在Firebase服务器上提交的写操作才被视为成功或失败,然后才被挂起。
onSuccess()
onFailure()
现在我想在脱机模式下调用setValue()方法时完成该活动。
不幸的是,据我所知,在将数据写入本地队列时没有触发任何事件。
Frank van Puffelen
https://stackoverflow.com/a/46014750/8518676