[英]Unable to retrievw data of firebase current online user
我想将当前在线用户的特定节点(clicksRemain)的数据从 firebase 检索到 textView 但数据未显示。 下面是我的代码。
实践活动
public class PracticeActivity extends AppCompatActivity {
TextView link1;
DatabaseReference dRef;
FirebaseDatabase firebaseDatabase;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_practice);
link1 = findViewById(R.id.link1);
firebaseDatabase = FirebaseDatabase.getInstance();
dRef = FirebaseDatabase.getInstance().getReference();
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
dRef.child("clicksRemain").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
String remainingClicks = snapshot.getValue(String.class);
link1.setText(remainingClicks);
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}else{
link1.setText("10");
}
}
}
我认为检查用户是否登录的代码是正确的,就像用户注销一样,然后应用程序显示此代码中写入的值 10。
提前致谢
我已经进行了这些更改,现在已成功检索数据。
FirebaseUser 用户 = FirebaseAuth.getInstance().getCurrentUser();
字符串 uID = user.getUid(); dRef = FirebaseDatabase.getInstance().getReference("Users");
dRef.child(uID).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
String remainingClicks = String.valueOf(snapshot.child("clicksRemain").getValue(Integer.class));
link1.setText(remainingClicks);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.