如何在 Firebase for Android 中获取根节点的子节点

eva*_*van 0 android firebase firebase-realtime-database

我有以下树结构

[1]

我需要单独获取信息名称和详细信息以及他们的孩子。

我已经这样做了,但在执行时不运行并关闭应用程序:

info = FirebaseDatabase.getInstance().getReference();
        info.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                for (DataSnapshot infoSnapshot: dataSnapshot.getChildren()) {
                    Log.i(TAG, infoSnapshot.child(info.toString()).getValue(String.class));
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
                Log.i(TAG, "onCancelled", databaseError.toException());
            }
        });
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

Ale*_*amo 5

要从根节点获取数据,请使用以下代码:

info = FirebaseDatabase.getInstance().getReference();
info.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot ds : dataSnapshot.getChildren()) {
            String child = ds.getKey();
            Log.d("TAG", child);
        }

    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        Log.i(TAG, "onCancelled", databaseError.toException());
    }
});
Run Code Online (Sandbox Code Playgroud)

输出将是:

details
name
Run Code Online (Sandbox Code Playgroud)