Как я могу вставить новые данные в массив без ключа в Firebase - PullRequest
0 голосов
/ 11 июня 2018

У меня есть существующий массив, который я создал локально и импортировал в Firebase, и мой массив выглядит следующим образом.

enter image description here

Эти оба элемента являются объектами, созданнымикоторые имеют много информации, связанной с назначениями.

Теперь я пытаюсь создать новый элемент с той же формой, например:

2-- | ___ И объект, который я создал вмое приложение

Я управлял или удалял только остальные элементы (с помощью setValue (объект))

        Appointment newAppointment = new Appointment.Builder()
            .fechacita(dateSelected)
            .horacita(hourSelected)
            .usertoken(mAuthManager.getCurrentUserId())
            .oficina(centerSelected)
            .build();

    mDatabaseRef.child("LISTACITAS").setValue(newAppointment);

или создавал его с идентификатором, который при восстановлении данных вызывает сбой вприложение из-за десериализации объектов, которые не равны.

Объект назначения, который я хочу вставить:

public class Appointment implements Parcelable {

private String fechacita;
private String horacita;
private Office oficina;
private String userID;
.....
}

Этот класс является обычным классом Parcelable, который генерирует объект сее строитель.

Пожалуйста, помогите ...

1 Ответ

0 голосов
/ 11 июня 2018

попробуйте этот код

mDatabaseRef.push().setValue(incidentReportUser)

Напишите его таким образом (push() добавляет значения вместо переопределения).

Ответ от здесь

ОБНОВЛЕНИЕ 1

, если вы хотите, чтобы серия в ключе, а не какое-то случайное значение, попробуйте это:

получите последний ключ в списке, используя

Query dbQry = mDatabaseRef.orderByKey (). LimitToLast (1);dbQry.addValueEventListener (new ValueEventListener () {@Override public void onDataChange (DataSnapshot dataSnapshot) {

   int key = Integer.parseInt(dataSnapshot.getKey());

   //Increment the key and add the object here using the earlier method
}

@Override
public void onCancelled(DatabaseError databaseError) {

}

} ​​

Я не проверял это на данный момент, но вы можете получить идею

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...