2016-04-28 10 views
-1

Мне нужно перезаписать существующие данные в CloudKitКак перезаписать существующие данные CloudKit в Swift?

Я попытался использовать saveRecord, и это не работает для меня.

В моем случае мне просто нужно переписать отдельные данные.

Как я могу это сделать?

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) 
{ 
    if locationEnable == true { 
    if loaded == true { 
     let location = locations.last! as CLLocation 

     let location2 = locations.last! 
     var a:String? 
     if(Data.count != 0){ a = Data[0].valueForKey("identity") as? String} 
     else {a = Data3!.valueForKey("identity") as? String} 
     let id = CKRecordID(recordName: a!) 
     let locationRecord = CKRecord(recordType: "Driver", recordID: id) 
     locationRecord.setObject(location2, forKey: "X") 
     locationRecord.setObject(a!, forKey: "Identity") 
     AddRecordToCloud(locationRecord) 
    } 
    if UIApplication.sharedApplication().applicationState != .Active { 
     print("Background Updating") 
    } 
    } 
} 
func AddRecordToCloud(record:CKRecord){ 
     let publicDatabase = CKContainer.defaultContainer().publicCloudDatabase 
     publicDatabase.saveRecord(record, completionHandler: { (record:CKRecord?, error:NSError?) -> Void in 
      if(error != nil){print("error:\(error)")} 
      else {print("saving")} 
     }) 
    } 

здесь ошибка:

error:Optional(<CKError 0x7fb858f5ba80: "Server Record Changed" (14/2004); server message = "record to insert already exists"; 
+0

Обновите свой вопрос соответствующим кодом и информацией о проблемах, которые у вас есть. – rmaddy

+0

Пожалуйста, не дублируйте [свой собственный пост.] (Http://stackoverflow.com/questions/36907061/how-to-keep-updating-cloud-kit-record-in-swift) – NobodyNada

+0

Я только что обновил спасибо :) –

ответ

0

Вы должны принести запись, а затем изменить данные в нем и сохранить ту же запись обратно.

+0

да я сделал то же самое, как у сказал –

+0

и я получил эту ошибку ошибку: Дополнительно ("Ошибка при сохранении записи сервер: данные защиты не совпадали ") –