Мне удалось получить строки, хранящиеся в массиве базы данных (Log.d("TAG", entry.getValue().toString());
показывает значения строк массива).
Строки представляют собой автоматически генерируемые идентификаторы документов, хранящиеся в массиве в Firestore, поэтому цель состоит в том, чтобы получить 3 идентификатора, чтобы я мог сделать 3 запроса, чтобы получить фактические документы.
Я застрял о том, как прикрепить строки, полученные из Firestore, к ArrayList, а затем получить 3 отдельные случайные строки из него.
Я относительно новичок в ArrayLists, поэтому любая помощь очень ценится!
Вот мой код:
questionRef.document(tvCat1).get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
DocumentSnapshot document = task.getResult();
Map<String, Object> map = document.getData();
for (Map.Entry<String, Object> entry : map.entrySet()) {
if (entry.getKey().equals("questions")) {
Log.d("TAG", entry.getValue().toString());
// Create function that gets 3 different values from the ArrayList and store them in 3 different Strings
}
}
}
}
});
Вот как я структурировал базу данных. В настоящее время я получаю ArrayList, поэтому у меня не так много чтений. Справа вы можете видеть документы, которые я хочу запросить, когда я выбрал 3 произвольных идентификатора документа из ArrayList: