用户突然失去网络时,Firebase onDisconnect花费太多时间来更新实时数据库

时间:2019-12-28 15:38:56

标签: android firebase firebase-realtime-database

我正在使用Firebase制作聊天应用程序,我需要立即了解该用户在线还是离线。但是,当用户突然失去网络时,就会出现onDisconnect方法。但是更新实时数据库需要花费太多时间。

这是我的代码。请为这个问题分享更好的解决方案。

        DatabaseReference infoConnected = FirebaseDatabase.getInstance().getReference(".info/connected");
        final DatabaseReference UpdateRef = FirebaseDatabase.getInstance().getReference("/Status/"+mAuth.getUid());
        infoConnected.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                boolean isCon = dataSnapshot.getValue(Boolean.class);
                if(isCon)
                {
                   DatabaseReference reference = UpdateRef.child("Status");
                   reference.setValue("Online");

                   reference.onDisconnect().setValue("Offline");

                }
            }

谢谢。

0 个答案:

没有答案