繁体   English   中英

如何从 Firebase 数据库中读取数据? - 爪哇

[英]How to read data from Firebase Database? - Java

我在做一个游戏,如果玩家获胜,那么胜利就会被添加到数据库中。 我怎样才能从这里读取数据?

在此处输入图像描述

并粘贴在这里:

在此处输入图像描述

我以不同的方式读取玩家的名字,无法重复胜利和失败。

为了能够读取jjjj节点下的数据,请使用以下代码行:

DatabaseReference db = FirebaseDatabase.getInstance().getReference();
DatabaseReference nameRef = db.child("players").child("jjjj");
nameRef.get().addOnCompleteListener(new OnCompleteListener<DataSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DataSnapshot> task) {
        if (task.isSuccessful()) {
            DataSnapshot snapshot = task.getResult();
            String loses = snapshot.child("loses").getValue(Long.class);
            String name = snapshot.child("name").getValue(String.class);
            String wins = snapshot.child("wins").getValue(Long.class);
            Log.d("TAG", loses + "/" + name + "/" + wins);
        } else {
            Log.d("TAG", task.getException().getMessage()); //Never ignore potential errors!
        }
    }
});

logcat 中的结果将是:

3/jjjj/4

注意事项:

  • 始终创建指向要读取的节点的引用。
  • 如果您的数据库位于默认位置以外的其他位置,请检查此答案

使用这个方法

这是从firebase实时数据库中获取数据的方法

DatabaseReference reference = FirebaseDatabase.getInstance().getReference();

    reference.child("players").child(name).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot snapshot) {
            for (DataSnapshot dataSnapshot : snapshot.getChildren()){

            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError error) {

        }
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM