无法将 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 中执行此操作的方式。请看一下。
由于 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 中执行此操作的方式。请看一下。