Ich muss vorhandene Daten in CloudKitWie überschreiben Sie vorhandene Daten von CloudKit in Swift?
überschreiben Ich habe versucht, saveRecord
zu verwenden, und es funktioniert nicht wirklich für mich.
In meinem Fall muss ich nur ein einzelnes Daten überschreiben.
Also wie kann ich tun?
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")}
})
}
hier ist der Fehler:
error:Optional(<CKError 0x7fb858f5ba80: "Server Record Changed" (14/2004); server message = "record to insert already exists";
Aktualisieren Sie Ihre Frage mit relevanten Code und Details über das Problem, das Sie haben. – rmaddy
Bitte nicht duplizieren [Ihre eigene Post.] (Http://stackoverflow.com/questions/36907061/how-to-keep-updating-cloud-kit-record-in-swift) – NobodyNada
Ich habe gerade aktualisiert danke :) –