2016-10-03 2 views
0

Ich versuche, eine iOS-Anwendung unter Verwendung von Objective C.Coredata nicht Daten über mehrere iOS-Geräte speichern

Wo zu bauen sagen einige Benutzer in meine App als UserName A angemeldet ist, und sie wollen für eine bestimmte Aufgabe laden, ein anderer Benutzer meiner App, B mit ihrer FirstName/LastName/Phone Number.

Ich verwende Coredata, um die Benutzeranmeldeinformationen bei der Registrierung zu speichern.

Die Frage ist: Das funktioniert gut, wenn ich sowohl A als auch B aus dem gleichen iOS-Gerät registrieren, aber nicht, wenn ich registriere A von iOS-Gerät 1 und B von iOS device2.

Coredata scheint nur die Benutzerdaten im lokalen Gerät zu speichern.

Wie kann ich sicherstellen, dass meine App für alle Benutzer funktioniert, die von einem iOS-Gerät angemeldet sind?

+0

Wie der Kommentar unten sagt, macht CoreData dies nicht automatisch für Sie. Welche Art von Informationen versuchen Sie zu speichern und zu synchronisieren? Es gibt viele Lösungen von Drittanbietern, aber die meisten von ihnen werden sich auf das Produkt konzentrieren, zB Instant Chat –

Antwort

2

Core Data lädt keine Daten auf einen Server oder synchronisiert Daten zwischen Geräten. Es ist als lokaler Datenspeicher konzipiert. Sie können die iCloud-Synchronisierung in Core Data aktivieren, dies ist jedoch ab iOS 10 veraltet.

Wenn Sie möchten, dass Ihre App-Daten auf mehreren Geräten verfügbar sind, müssen Sie dafür einen Code schreiben. Apple bietet CloudKit und es gibt viele Lösungen von Drittanbietern. Aber Sie können Core Data nicht einfach sagen, Daten zu synchronisieren, weil Core Data das nicht tut.

+0

Vielen Dank Tom! Das klärt die Dinge ein wenig auf. Ich habe gerade angefangen, über CloudKit zu lesen und es sieht so aus, als würde es in meinem Fall nur funktionieren, wenn die Nutzer "A" und "B" meiner App dieselbe Cloud teilen, was nicht immer stimmt. Bitte korrigieren Sie mich, wenn ich falsch liege? – Srikanth

+1

Apple hat kürzlich eine Freigabeoption für CloudKit eingeführt, die diese Anforderung nicht erfüllt - siehe [WWDC 2016 Video zum Thema] (https://developer.apple.com/videos/play/wwdc2016/226/). –