Есть два способа добиться этого. Во-первых, нужно сохранить этот выдвинутый идентификатор, как только он будет сгенерирован, и использовать его позже, когда это необходимо в вашей ссылке. Поэтому при добавлении объекта Challange
в базу данных используйте следующие строки кода:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference challangeRef = rootRef.child("Challange");
String key = challangeRef.push().getKey();
challangeRef.child(key).setValue(yourChallangeObject);
Как только это key
сгенерировано, вы можете использовать его, когда вам это нужно в вашей деятельности.
Как @PeterHaddad также упомянул в своем ответе, другой подход заключается в использовании Query
. Таким образом, вы должны добавить свойство fixed
под каждым объектом вызова, чтобы вы могли запрашивать базу данных в соответствии с ним. Я рекомендую вам добавить id
пользователя, который создал вызов. Запрос в этом случае должен выглядеть так:
Query query = challangeRef.orderByChild("uid").equalTo(uid).addListenerForSingleValueEvent(/* ... */);