无法将 ZoneConfiguration 转换为 ZoneOptions

Cannot convert ZoneConfiguration to ZoneOptions

由于 ZoneOptions 已弃用,我将 optionsByRecordZoneID 变量更改为 ZoneConfiguration 如下

   var optionsByRecordZoneID = [CKRecordZone.ID: CKFetchRecordZoneChangesOperation.ZoneConfiguration]()

   for zoneID in zoneIDs {
            let options = CKFetchRecordZoneChangesOperation.ZoneConfiguration()
            options.previousServerChangeToken = settings.getChangeToken(forKey: databaseTokenKey)
            optionsByRecordZoneID[zoneID] = options
        }

现在,optionsByRecordZoneID 变量

这一行出现以下错误
let fetchRecordZoneChangesOperation = CKFetchRecordZoneChangesOperation(recordZoneIDs: zoneIDs, optionsByRecordZoneID: optionsByRecordZoneID)

Cannot convert value of type '[CKRecordZone.ID : CKFetchRecordZoneChangesOperation.ZoneConfiguration]' to expected argument type '[CKRecordZone.ID : CKFetchRecordZoneChangesOperation.ZoneOptions]?'

任何关于摆脱它的帮助将不胜感激。

init(recordZoneIDs:,optionsByRecordZoneID:) 也已弃用,因为它采用旧的 ZoneOptions

使用init(recordZoneIDs:,configurationsByRecordZoneID:).

let fetchRecordZoneChangesOperation = CKFetchRecordZoneChangesOperation(recordZoneIDs: zoneIDs, configurationsByRecordZoneID: optionsByRecordZoneID)

只需添加此条目即可说明已接受的答案是 在 Xcode 10.2 中执行此操作的方式。请看一下。