首页 > 解决方案 > 无法从 Android Studio 中的 Firebase 获取所有价值

问题描述

我在 Firebase 数据库中读取值时遇到了一些问题,这是实时数据库的结构,抱歉我不允许嵌入图片:

这是我的 Object 类,还包含 Constructor、Getter 和 Setter:

public class ScheduleObject {
    private String TimeEnd;
    private String TimeStart;
    private Boolean isActive;

    ...
}

当我使用 dataSnapshot.getValue(ScheduleObject.class) 时,我将从 TimeEnd 和 TimeStart 获取值,但 isActive 始终返回 null。似乎它没有在 Firebase 上获得价值,但我不知道为什么?

        public void onDataChange(DataSnapshot dataSnapshot) {
            if (dataSnapshot.exists()) {
                scheduleObject = new ScheduleObject();
                scheduleObject = dataSnapshot.getValue(ScheduleObject.class);
            }
        }

只有当我使用 dataSnapshot.child("isActive").getValue(Boolean.class) 时,它才会从 Firebase 返回值。谢谢你的帮助!

标签: javaandroid-studioobjectfirebase-realtime-databasegetvalue

解决方案


选项 1) 如果您的布尔字段被命名为 isActive,那么 getter 必须被命名为 isIsActive() 或 getIsActive()

选项 2)如果您想要一个 getter isActive,则字段名称将仅处于活动状态


推荐阅读