Как получить уникальный случайный ключ, как только он был обновлен? - PullRequest
0 голосов
/ 03 февраля 2019

Я работаю с FireBase.Но я новичок в пожарной части.У моего приложения есть активность по загрузке сообщения, и здесь есть структура JSON.

post:{
  uid1:{
        -random1:{
                  text:hello,
                  uploader:John
                 },
         -random2:{
                  text:hello2334,
                  uploader:John
                 },
      },
  uid2:{
        -random3:{
                  text:Mornig,
                  uploader:Jack
                  },
      }

  }
likes:{
  uid1:{
        -random1:{
                  uid4:true,
                  uid5:true
                 },
        -random2:{
                  uid4:true,
                  uid3:true,
                 }

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

submit.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
                        post.push().setValue(textfield.getText());
                        /*I want to upload like node with the same random key but with different value. I don't know how to do it*/
                             }
                 });    

Когда пользователь нажимает на сообщение, я обновляю сообщение случайным ключом, а затем хочу обновить подобное с тем же случайным ключом. Я не знаю, как загрузить на узел с тем же случайным ключом вв то же время (только UID и случайный идентификатор узла), как я нуб.Я много искал, но ответа не было найдено.Извините за плохое владение английским письмом ...

1 Ответ

0 голосов
/ 03 февраля 2019

Вы можете получить ключ, прежде чем писать данные.Вы используете метод push, чтобы создать ключ, чтобы получить его до того, как вам нужно будет использовать push, но также использовать setValue

ref = root.child("post").child(uid);
key = ref.push().key //it could be getKey() depending on the sdk
ref.child(key).setValue(yourObject);
root.child("likes").child(ownerUid).child(key).child(uid).setValue(true)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...