Как получить идентификатор при добавлении звонка за один шаг в Firestore? - PullRequest
0 голосов
/ 02 ноября 2018

Я знаю, чтобы получить идентификатор:

String cityId = db.collection("cities").document().getId();
db.collection("cities").document(cityId).set(city);

Но проще:

db.collection("cities").add(city);

Но как получить идентификатор? Это не работает .add(city).getId(). Нет информации в документах.

1 Ответ

0 голосов
/ 02 ноября 2018

Как получить идентификатор при добавлении звонка за один шаг в Firestore?

Невозможно получить идентификатор документа за один шаг, как при вызове document(). Чтобы решить эту проблему, вы должны добавить полный слушатель. Попробуйте это:

db.collection("cities").add(city).addOnCompleteListener(new OnCompleteListener<DocumentReference>() {
    @Override
    public void onComplete(@NonNull Task<DocumentReference> task) {
        if (task.isSuccessful()) {
            DocumentReference document = task.getResult();
            if (document != null) {
                String id = document.getId(); //Do what you need to do with the document id
                Log.d(TAG, id);
            }
        }
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...