Итак, у меня есть база данных в Firebase.
Этот код находится в onCreate ():
DatabaseReference mDatabaseRefUser =FirebaseDatabase.getInstance().getReference("Users");
Этот код находится в другом методе, который вызывается onClick:
mDatabaseRefUser.child("Chat").child(mAuth.getCurrentUser().getUid())
.child(userID).child(uploadID).child("Messages").push().setValue(new ChatMessage(addMessageEditText.getText().toString(),
mAuth.getCurrentUser().getEmail()));
mDatabaseRefUser.child("Chat").child(userID)
.child(mAuth.getCurrentUser().getUid()).child(uploadID).child("Messages").push().setValue(new ChatMessage(addMessageEditText.getText().toString(),
userEmail));
То, что я пытаюсь сделать, это добавить новое значение без удаления предыдущего / существующего значения при каждом вызове метода.
На данный момент каждый раз, когда я нажимаю и запускаю метод, предыдущее / существующее значениеудаляется, а новый добавляется.Но я не хочу ни того, ни другого.Я хочу, чтобы это новое значение было добавлено.Я попытался с getRef и push (), но мои данные все еще перезаписываются.Что я здесь не так делаю?
Это мой первый JSON, когда я вызываю метод:
"Users" : {
"Chat" : {
"Xta3jwm4yLQWaJBypMBFt2esiOr2" : {
"xfqAFlRpbUZRlZb76svN5FUtbU93" : {
"-LCvIA_9L1Y9rjkm96Aj" : {
"Messages" : {
"-LCvqDidnNqQ8ALZhDud" : {
"messageText" : "Very good",
"messageTime" : 1526791230552,
"messageUser" : "mama@mama.com"
}
},
"chatAgainstUserEmail" : "mama2@mama.com",
"chatAgainstUserID" : "xfqAFlRpbUZRlZb76svN5FUtbU93",
"uploadID" : "-LCvIA_9L1Y9rjkm96Aj",
"userEmail" : "mama@mama.com",
"userID" : "Xta3jwm4yLQWaJBypMBFt2esiOr2"
}
}
},
"xfqAFlRpbUZRlZb76svN5FUtbU93" : {
"Xta3jwm4yLQWaJBypMBFt2esiOr2" : {
"-LCvIA_9L1Y9rjkm96Aj" : {
"Messages" : {
"-LCvqDigI8ZwHDYuPhw9" : {
"messageText" : "Very good",
"messageTime" : 1526791230555,
"messageUser" : "mama2@mama.com"
}
},
"chatAgainstUserEmail" : "mama@mama.com",
"chatAgainstUserID" : "Xta3jwm4yLQWaJBypMBFt2esiOr2",
"uploadID" : "-LCvIA_9L1Y9rjkm96Aj",
"userEmail" : "mama2@mama.com",
"userID" : "xfqAFlRpbUZRlZb76svN5FUtbU93"
}
}
}
}
Это мой JSON, когда я вызываю его во второй раз
"Users" : {
"Chat" : {
"Xta3jwm4yLQWaJBypMBFt2esiOr2" : {
"xfqAFlRpbUZRlZb76svN5FUtbU93" : {
"-LCvIA_9L1Y9rjkm96Aj" : {
"Messages" : {
"-LCvr0zoHOPxsKOVJzeu" : {
"messageText" : "Very good 2nd call",
"messageTime" : 1526791440547,
"messageUser" : "mama@mama.com"
}
},
"chatAgainstUserEmail" : "mama2@mama.com",
"chatAgainstUserID" : "xfqAFlRpbUZRlZb76svN5FUtbU93",
"uploadID" : "-LCvIA_9L1Y9rjkm96Aj",
"userEmail" : "mama@mama.com",
"userID" : "Xta3jwm4yLQWaJBypMBFt2esiOr2"
}
}
},
"xfqAFlRpbUZRlZb76svN5FUtbU93" : {
"Xta3jwm4yLQWaJBypMBFt2esiOr2" : {
"-LCvIA_9L1Y9rjkm96Aj" : {
"Messages" : {
"-LCvr0zrh8wQ2WurUezs" : {
"messageText" : "Very good 2nd call",
"messageTime" : 1526791440550,
"messageUser" : "mama2@mama.com"
}
},
"chatAgainstUserEmail" : "mama@mama.com",
"chatAgainstUserID" : "Xta3jwm4yLQWaJBypMBFt2esiOr2",
"uploadID" : "-LCvIA_9L1Y9rjkm96Aj",
"userEmail" : "mama2@mama.com",
"userID" : "xfqAFlRpbUZRlZb76svN5FUtbU93"
}
}
}
}
Я тоже пробовал с getRef().push()
, но это тоже не сработало.Я тоже пробовал без. getRef()
и без .push()
, тоже не сработало.