阅读长数据时出现Firebase问题

时间:2018-05-27 10:40:00

标签: android firebase firebase-realtime-database

Android工作室。 Java的。 在Firebase中我写下了我班级的对象。该类包含long类型的字段。在控制台中,正确写入了firebase数据。但是在读取数据时,long类型的字段会获得一个空值,并且所有其他字段都会被正确读取。 什么可以是proleuma以及如何解决它?

这是一个存储在firebase中的对象类:

public class MovementsClass {
    private int Kind;                                   //тип записи: доход/расход
    //private byte Repeatability;                         //повторяемость записи
    private double Value;                                 //сумма движения
    private long DateInMilisec;
    private String Name;

    public MovementsClass() { }

    public int getKind() {
        return Kind;
    }
    public double getValue() {
        return Value;
    }
    public long getDateInMilisec() {
        return DateInMilisec;
    }
    public String getName() {
        return Name;
    }


  public void setKind(int Kind) {
    this.Kind = Kind;
}
public void setCurrentDate() {
    this.DateInMilisec = new Date().getTime();

这是读取数据的过程:

@Override
    protected void onStart() {
        super.onStart();

        CurrentUser = FirebaseAuth.getInstance().getCurrentUser();
        mDBref = FirebaseDatabase.getInstance().getReference(CurrentUser.getUid()).child("Movements");

        mBDMovements = new ArrayList<>(0);
        mDBref.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                //GenericTypeIndicator <ArrayList<MovementsClass>> MoveList = new GenericTypeIndicator<ArrayList<MovementsClass>>(){};
                mBDMovements.clear();
                for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
                    mBDMovements.add(snapshot.getValue(MovementsClass.class));
                }
                //mBDMovements = dataSnapshot.child(CurrentUser.getUid()).child("Movements").getValue(MoveList);
                mAdapter = new MovementsListAdapter(getApplicationContext(), mBDMovements);   // каждый раз при обновлении данных?
                setListAdapter(mAdapter);
            }

在变量mBDMovements.DateInMilisec得到0:

debugger

0 个答案:

没有答案