Моя структура документа Firestore, я создал ее через Android:
--- Document
----- testA (object)
----- testB (array)
------- 0: Device item 1
------- 1: Device item 2
У меня есть следующая структура:
import Foundation
public struct Device: Codable {
var manufacturer: String?
var model: String?
var osVersion: String?
enum CodingKeys: String, CodingKey {
case manufacturer
case model
case osVersion
}
}
Мой объект устройства
let currentDevice = Device(manufacturer: "a", model: "b", osVersion: "c")
Тест A: обновить Device
до документа. Я попробовал следующий код:
db.collection("testCollection").document("testDoc").updateData([testA: currentDevice])
...
Тест B: добавьте Device
к testB
массиву.
db.collection("testCollection").document("testDoc")
.updateData([testA: FieldValue.arrayUnion([currentDevice])])
Все это вызывает ошибку ниже: Terminating app due to uncaught exception 'FIRInvalidArgumentException', reason: 'Unsupported type: __SwiftValue'
Я также проверил официальный документ, но он не показывает, как обновить объект структуры до Firestore. Что я могу сделать? Спасибо.