
我的應用程式是按月計算的應用程式。就像每個月的第一天,我的應用程式應該進行計算并更新 firebase 中的資料。因為沒有這樣的功能,我正在使用一個按鈕(重置),單擊該按鈕時在 Firebase 中進行計算和更新,但我沒有'不知道如何更新所有節點中的所有日期子節點,請幫助我。
直到現在我已經嘗試過了。
datarefoutstd = database.getReference("outstdln");
datarefoutstd.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot outsnapshot: snapshot.getChildren()) {
outsnapshot.child("date").setValue(snapshot.getValue(Long.class) 1);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
uj5u.com熱心網友回復:
要將所有節點中的屬性值加一date,請使用以下代碼行:
DatabaseReference db = FirebaseDatabase.getInstance().getReference();
DatabaseReference outstdlnRef = db.child("outstdln");
outstdlnRef.get().addOnCompleteListener(new OnCompleteListener<DataSnapshot>() {
@Override
public void onComplete(@NonNull Task<DataSnapshot> task) {
if (task.isSuccessful()) {
for (DataSnapshot ds : task.getResult().getChildren()) {
ds.child("date").getRef().setValue(ServerValue.increment(1));
}
} else {
Log.d("TAG", task.getException().getMessage()); //Never ignore potential errors!
}
}
});
僅當您將屬性的型別date從 String 更改為 number時,此代碼才有效。將數字存盤為字串確實是一種不好的做法。您應該始終根據其正確的資料型別存盤資料。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/439746.html
標籤:爪哇 安卓 火力基地 firebase-实时数据库
