Каков рекомендуемый способ десериализации документа Firestore, содержащего массив?

Я пытаюсь получить документ Firestore, содержащий массив, однако я не могу заставить метод DocumentSnapshot.toObject работать правильно, как только я добавлю массив. Я не хочу использовать коллекцию, поскольку массив, вероятно, будет содержать только 1-2 элемента max.

 java.lang.RuntimeException: Could not deserialize object. Failed to convert value of type com.google.android.gms.internal.zzegf to DocumentReference (found in field 'references.[0]') 

Ниже мой модельный класс

 data class SomeModel( var references : ArrayList<DocumentReference> = ArrayList(0), var title : String? = null, var acronym : String? = null, var number : Long? = null ){ } 

Мой документ Firestore содержит массив с именами с одним DocumentReference . Если я удаляю ссылочное поле из класса модели, объект десериализуется просто отлично.

если я хочу получить список элементов внутри одного документа, я мог бы сделать: –

класс данных, который содержит список строк, список может быть любого типа

note: – я предоставляю значения по умолчанию для всех параметров, для десериализации необходимо, чтобы класс имел пустой подрядчик.

  data class SomeModel(val references : List<String> = emptyList() , val title : String = "" , val acronym : String = "" , val number : Long = 0L) 

то я могу указать на этот единственный документ и десериализировать его, включая список itmes в документе следующим образом:

 val db = FirebaseFirestore.getInstance() val someModelRef = db.collection("someCollection").document("SomeModel") someModelRef.get().addOnSuccessListener { val someModel : SomeModel = it.toObject(SomeModel::class.java) someModel.references.forEach { Log.i("MainActivity","items $it") } } 

данные в базе данных firestore: –

введите описание изображения здесь

вывод в моем logcat, когда я запускаю вышеуказанный код

введите описание изображения здесь

Обновление моей записи файла градиента firebase-firestore с 11.4.2 по 11.6.0 устраняет проблему десериализации.