是否可以将 firebase auth 链接到实时数据库

时间:2021-02-13 11:25:50

标签: android firebase-realtime-database firebase-authentication

有没有办法做类似下面的事情。

this the sample model of my firebase real-time database

问题是,我不知道如何在包含我的用户 ID 的身份验证中连接它。

谁能解释一下或者举个例子?

编辑:来自对答案的评论的代码:

Integer num1 = Integer.parseInt(edt1.getText().toString()); 
Integer num2 = Integer.parseInt(edt2.getText().toString()); 
Integer result = num1+num2; 
String data = Date+result; 
DateView.setText("Date Computed: " + Date + Hrs +"\n \n Computed Result: "+ result); 
HashMap<String, Integer> userMap = new HashMap<>(); 
userMap.put(Hrs, result); 
rootNode = FirebaseDatabase.getInstance(); 
reference = rootNode.getReference("Users").child("UserID").child("Logs");
reference.push().child(Date).setValue(userMap);

2 个答案:

答案 0 :(得分:2)

当用户完成注册过程后,将用户存储在您的数据库中。 即

users
   userId1
      name XYZ
      email XYZ
      ........
    userId2
      name XYZ
      email XYZ
      ........

答案 1 :(得分:2)

您需要在使用 UID 作为键的节点下写入数据。所以第一步是确定当前用户的UID:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();

然后你用它来写入数据库:

rootNode = FirebaseDatabase.getInstance(); 
reference = rootNode.getReference("Users").child(uid).child("Logs");
reference.setValue(userMap);

此代码与您在问题中显示的 JSON 匹配。如果您想在 Logs 下自动生成唯一的子节点,可以使用 push() 来实现。