平板电脑重启后,取消清除Firebase(android)onDisconnect

时间:2016-11-16 04:17:55

标签: android firebase-realtime-database

当客户端断开连接且运行良好时,我一直在使用onDisconnect删除删除数据。

当wifi断开一小段时间后,当我重新连接时,请确保cancel()之前的 onDisconnect ,否则“旧” onDisconnect 会触发使用此代码。

 dbReference.onDisconnect().cancel(new DatabaseReference.CompletionListener() {
     @Override
     public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
               databaseReference.onDisconnect().removeValue();
         }
     });

我的问题是,在设备重启时,我无法取消在设备重启之前设置的旧 onDisconnect ,即使我使用相同的用户名和密码进行连接也是如此。我猜是因为设备已重新启动,有一个新的会话/令牌/东西。文档说明:

  

“取消在此位置排队的所有断开连接操作”

我希望能够取消旧的 onDisconnect 。这是一个错误吗?除了使用ValueEventListener和onDataChanged监视旧的 onDisconnect ,然后还原损坏。有没有更明智的方法来解决这个错误?

注意:我正在使用firebase 9.8.0。

0 个答案:

没有答案