2014-09-19 2 views
21

Kerndaten über iOS abgeschlossen sein/funktioniert gut, aber während Update bekommen oder in iOS 8 in die Datenbank zu schreiben, erhalte ichiCloud Ausnahme der Vorgang konnte nicht keine solche Datei oder das Verzeichnis, iOS8

2014-09- 19 01: 16: 31.819 xxxxxx [369: 57150] __45- [PFUbiquityFilePresenter processPendingURLs] _block_invoke (439): CoreData: Ubiquity: Librarian hat beim Starten der Downloads einen schwerwiegenden Fehler zurückgegeben Fehlerdomäne = BRCloudDocsErrorDomain Code = 5 "Der Vorgang konnte nicht abgeschlossen werden .

(BRCloudDocsErrorDomain Fehler 5 - kein Dokument URL).“kein Dokument URL = Userinfo 0x175a85c0 {NSDescription =, NSUnderlyingError = 0x175aefb0 "Der Vorgang konnte nicht abgeschlossen werden keine solche Datei oder das Verzeichnis",

NSFilePath =/var/mobile/Library/Mobil Dokumente/xxxxx/Coredata/ATracker/mobile ~ 268B3375-7A17-4FFA-89DE-AE1BF8DDB134/xxxxx/OJ ~ PXmuzk0E_yZN9NTVWA20 ~ k_qcPzNgyW_uT_mz098 =/8929F33C-BB6A-48B6-B16C -BF612D04D947.1.cdt} mit {userinfo

NSDescription = "No document at URL"; 
NSFilePath = "/var/mobile/Library/Mobile Documents/xxxxx~xxxx~xxxxx/CoreData/xxxxx/mobile~268B3375-7A17-4FFA-89DE-AE1BF8DDB134/xxxxx/OJ~PXmuzk0E_yZN9NTVWA20~k_qcPzNgyW_uT_mz098=/8929F33C-BB6A-48B6-B16C-BF612D04D947.1.cdt"; 
NSUnderlyingError = "Error Domain=NSPOSIXErrorDomain Code=2 \"The operation couldn\U2019t be completed. No such file or directory\" UserInfo=0x175c2d50 {NSDescription=No such file or directory}"; 

} für diese Urls: (

"file:///var/mobile/Library/Mobile%20Documents/xxxxx~xxxx~xxxxx/CoreData/xxxxx/mobile~268B3375-7A17-4FFA-89DE-AE1BF8DDB134/xxxxx/OJ~PXmuzk0E_yZN9NTVWA20~k_qcPzNgyW_uT_mz098=/8929F33C-BB6A-48B6-B16C-BF612D04D947.1.cdt" 

)

Antwort

5

ich ähnliches Problem hatte, nicht mit iCloud, aber mit main~~POS=TRUNC. Es kann sein, dass Sie die URL oder den Dateipfad Ihrer Dokumente speichern und dann versuchen, sie mit diesem URL/filePath zu lesen. In iOS8 ist der Speicherort von mainBundle jedoch bei jeder Ausführung Ihrer App unterschiedlich (xxxxx ~ xxxx ~ xxxxx Teil der URL). Sie sollten also nur den Dateinamen speichern und dafür jedes Mal den URL/filePath verwenden. Ich bin mir nicht sicher, ob dies auch für iCloud-Dokumente gilt, aber ich hoffe, das hilft oder führt Sie in die richtige Richtung.

+0

Danke! Ich habe meinen Code erneut gelesen, ich habe "[[NSURL fileURLWithPath: [self applicationDocumentsDirectory]] URLByAppendingPathComponent: storeFilename]", das Verzeichnis ist [NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES) lastObject], Dateiname ist nur der Name der Datei. Sie haben also erwähnt, dass manchmal ein anderes erstellt wird, was zu Konflikten führen kann. – user2585453

+2

user2585453, so Wie Sie den Quellcode geändert haben und es funktioniert? –

+2

Es funktioniert nicht. Die App erstellt einen neuen Ordner in CoreDataUbiquitySupport in der neuen App-Version, auch wenn dort bereits ein Ordner existiert. Es stürzt die App nicht ab, aber alle Benutzerdaten gehen nach dem Upgrade verloren (obwohl dies nicht für alle Benutzer geschieht). Der Ordner, den es erneut erstellt hat, ist der Ordner "mobile-xxxxx", der Ordner "coredata", nachdem er immer noch dieselbe ID verwendet. – user2585453

Verwandte Themen