Firebase数据库推送功能

时间:2018-12-16 13:44:16

标签: android firebase firebase-realtime-database

我正在使用Android Studio和Firebase创建评估测试。我在第一个活动中推送条目,并在第二个活动后更新分数。我接下来要做的是,在完成两个活动之后,一旦我再次启动第一个活动,它将被推到另一个表中,并能够在下一个活动中再次更新该组数据。我只能做一个评估测试,我不能记录重试次数,它只会更新第一个活动。

查询第一个活动:

DatabaseReference myRef = firebaseDatabase.getReference(firebaseAuth.getUid());

UserHistory userHistory = new UserHistory();
userHistory.setAnx(anx);
userHistory.setDep(dep);
myRef.setValue(userHistory);

查询第二个活动

final DatabaseReference myRef = 
firebaseDatabase.getReference(firebaseAuth.getUid());
    myRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            UserHistory userHistory = dataSnapshot.getValue(UserHistory.class);
            anxHistory = userHistory.getAnx();
            depHistory = userHistory.getDep();
            anxValue = anxHistory + anx;
            depValue = depHistory + dep;
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
            Toast.makeText(Part2.this, databaseError.getCode(), Toast.LENGTH_SHORT).show();
        }
    });

    btnNext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            DatabaseReference myRef = firebaseDatabase.getReference(firebaseAuth.getUid());

            UserHistory userHistoryNew = new UserHistory();
            userHistoryNew.setAnx(anx);
            userHistoryNew.setDep(depValue);
            myRef.setValue(userHistoryNew);

如何在不替换第一组数据的情况下写入和更新下一组数据?

0 个答案:

没有答案