【发布时间】:2017-06-06 21:07:37
【问题描述】:
在过去的 5 天里,我一直在尝试从我的 firebase 数据库中检索数据字段,但没有任何成功。这是我的数据库的样子:
获取数据的代码:
private void alterTextView(final String id) {
if(id!=null) {
mDatabase.child("Users").child(id).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
UserInformation userInformation = dataSnapshot.getValue(UserInformation.class);
String name = (String) userInformation.getName();
Log.d("Main Activity",name);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
mWelcomeUserMessage.setText("Welcome, "+name);
}
}`
我不知道为什么名字是'null'(参考日志)。 谁能告诉我我做错了什么?
PS:我在我的 UserInformation.java 类中定义了一个空白的默认构造函数、getter 和 setter。
另外,mDatabase初始化如下:
mDatabase = FirebaseDatabase.getInstance().getReference();
【问题讨论】:
-
你能把你的dataSnapshot的.toString()放在这里吗?
-
我不明白.. 我的数据快照没有 .toString()。我认为 getValue() 就足够了吗?
-
它将打印一个带有键和值的 json。 Log.d(TAG, "收到的数据:" + dataSnapshot.toString());
-
请编辑您的问题并将图片替换为实际代码和 JSON。您可以通过单击Firebase Database console 中的“导出 JSON”链接来获取后者。
-
toString() 方法完美运行
标签: android firebase firebase-realtime-database