Firebase 实时数据库读取不工作 (Android Java)

Firebase Realtime database read not working (Android Java)

我正在使用实时数据库将信息从 Windows 计算机传输到 Android phone。我能够将数据从 Windows PC 写入数据库,但出于某种原因我无法将其从数据库读取到 Android。我正在使用 Android 工作室 Java。这是代码:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
    DatabaseReference userRef = rootRef.child("users");
    userRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            for (DataSnapshot ds : dataSnapshot.getChildren()) {
                String name = ds.getKey();
                PCs.add(new PC(name));
            }
            for (int i = 0; i < PCs.size(); i++) {
                PCs.get(i).setIp(dataSnapshot.child(PCs.get(i).getName()).child("ip").getValue(String.class));
                PCs.get(i).setConnected(dataSnapshot.child(PCs.get(i).getName()).child("status").getValue(Boolean.class));
            }
        }
        @Override
        public void onCancelled(@NonNull DatabaseError error) {
        }
    });

就是不进入onDataChange方法,也不进入onCancelled方法

如果它没有进入任何回调,您可能没有正确配置与数据库的连接。解决这个问题的一个简单方法是在代码中传递数据库 URL,而不是依赖于 google-services.json 文件:

DatabaseReference rootRef = FirebaseDatabase.getInstance("your database URL").getReference();

一般来说,您应该从不忽略可能的错误,并实施onCancelled。至少应如下所示:

public void onCancelled(@NonNull DatabaseError error) {
    throw error.toException();
}