Просматривая структуру вашей базы данных и предполагая, что вы должны достичь этого:
Firebase-root
|
--- accounts
|
--- userId
|
--- missions
|
--- 0
| |
| --- //Mission details
|
--- 4
|
--- //Mission details
Пожалуйста, используйте следующие строки кода:
val missionsReference = FirebaseDatabase.getInstance().reference.child("accounts").child(userId).child("missions")
val mission = Mission(product.id, product.imageUrl, product.title, product.logoUrl, remain.timeInMillis, "", -1, snsAddress)
missionsReference.child("4").setValue(mission)
Но вместо передачи жестко закодированного значения вФункция child()
, я рекомендую использовать случайный ключ, сгенерированный функцией push()
следующим образом:
missionsReference.push().setValue(mission)
Теперь ваша структура базы данных будет выглядеть следующим образом:
Firebase-root
|
--- accounts
|
--- userId
|
--- missions
|
--- randomId
| |
| --- //Mission details
|
--- randomId
|
--- //Mission details
В этом случае нет необходимости использовать функцию updateChildren()
.Эта функция используется для обновления свойств объекта Mission
, например, если вы хотите изменить свойство `imageUrl``.