Seam va permite sa va sincronizati magazinele CoreData cu CloudKit.

Subiecte

  • Caracteristici
  • Cerinte
  • Comunicare
  • Instalare
  • Utilizare
  • Notiuni de baza
  • FAQ
  • Aplicatii
  • Autor
  • Licenta

Caracteristici

  • Cartarea automata a modelelor CoreData la bazele de date private CloudKit
  • Sprijina active
  • Sincronizare fundal
  • Rezolvarea conflictului

Cerinte

  • iOS 8.0+ / Mac OS X 10.10+
  • Xcode 7.1+

Comunicare

  • Daca doriti sa contribuiti, trimiteti o cerere de extragere.
  • Daca aplicatia dvs. foloseste Seam, ma voi bucura sa o adaug pe lista. Editati lista si trimiteti o cerere de extragere.
  • Daca ati gasit o eroare, deschideti o problema.
  • Daca aveti o cerere de functie, deschideti o problema.
  • Daca aveti o intrebare, puneti-o pe Stack Overflow.

Va rugam sa cititi Ghidul de contributie inainte de a face oricare dintre cele de mai sus.

Instalare

Cocoapode

CocoaPods este un manager de dependenta pentru proiectele Cocoa. Puteti sa-l instalati cu urmatoarea comanda:

Pentru a integra Seam in proiectul dvs. Xcode folosind CocoaPods, specificati-l in Podfile:

sursa platforma „https://github.com/CocoaPods/Specs.git”: ios, „8.0” use_frameworks! pod „Cusatura”, „~> 0,6”

Apoi, executati urmatoarea comanda:

Cartagina

Carthage este un manager de dependenta descentralizat care va construieste dependentele si va ofera cadre binare.

Puteti instala Carthage cu Homebrew folosind urmatoarea comanda:

$ brew update $ brew install carthage

Pentru a integra Seam in proiectul dvs. Xcode folosind Carthage, specificati-l in fisierul dvs. Cart:

github “Cusatura / Cusatura” ~> 0,6

Rulati actualizarea carthage pentru a construi cadrul si trageti Seam.framework incorporat in proiectul dvs. Xcode.

Utilizare

Adaugati un tip de magazin SeamStoreType la un coordonator NSPersistentStore din stiva CoreData:

let persistentStoreCoordinator = NSPersistentStoreCoordinator (managedObjectModel: yourModel) let seamStore = try persistentStoreCoordinator.

amas de casa follando abuelas españolas follando
madres viciosas correte dentro
viejas feas todoporno
jovencitos desnudos pajotes
follando en canarias las mejores folladas
your porn viejasxxx
follando con mirones españolas peludas
videosgays guarras.com
jovencitas xxx hd comicxxx
fakings.tv porno torrent
madresxxx porno peludas
peliculas porno vintage madresxxx
pelis porno español online pilladas playa
maduras en castellano videos xxxxx
maduras españolas sexo sexo en directo
travestis dotadas madura tetona
porno amater español corriendose dentro
mamada gay mamadas de abuelas
corrida boca porno canario

addPersistentStoreWithType (SeamStoreType, configuration: nil, URL: url, options: nil) ca? Magazin

Respectati urmatoarele doua notificari pentru a afla cand incepe si se termina operatia de sincronizare:

NSNotificationCenter.defaultCenter (). AddObserver (auto, selector: “didStartSyncing:”, nume: SMStoreDidStartSyncingNotification, obiect: seamStore) NSNotificationCenter.defaultCenter (). AddObserver (self, selector: “didFinishSyncing:” func didStartSyncing (notificare: NSNotification) {// Pregatiti-va pentru date noi inainte de finalizarea sincronizarii} func didFinishSyncing (notificare: NSNotification) {// Mergeti modificarile in contextul dvs. dupa sincronizare finalizeaza mainContext.mergeChangesFromStoreDidFinishSyncingNotification (notificare)}

Apelati sincronizarea oricand si oriunde doriti:

Pentru a declansa sincronizarea ori de cate ori se intampla o modificare pe serverele CloudKit. Abonati-va la magazin pentru a primi notificari push de la serverele CloudKit.

seamStore.subscribeToPushNotifications ({reusit in garda cu succes else {return} // Asigurat ca abonamentul a fost creat cu succes}) // In aplicatia functiei AppDelegate (aplicatie: UIApplication, didReceiveRemoteNotification userInfo: [NSObject: AnyObject]) {seamStore.sync (nil )}}

Atribute

Toate atributele CloudKit sunt mapate automat la atributele dvs. CoreData, cu exceptia CKAsset si CLLocation.

CKAsset si CLLocation pot fi utilizate prin setarea atributului corespunzator ca Transformabil in modelul dvs. CoreData.

CloudKit CoreData NSDate NSDate NSData NSData NSString NSString NSNumber NSNumber CKReference NSManagedObject CKAsset Transformable CLLocation Transformable

Atribute transformabile

CKAsset si CLLocation pot fi utilizate in modelul dvs. CoreData ca atribute transformabile.

  1. Pentru a utiliza CKAsset set Transformable ca AttributeType si CKAssetTransformer ca nume de transformator de valoare pentru atribut.
  1. Pentru a utiliza CLLocation setati Transformable ca AttributeType si CLLocationTransformer ca nume de transformator de valoare pentru atribut.

Relatii

CoreData Relationship Translation pe CloudKit To – relatiile one to one sunt traduse ca CKReferences pe serverele CloudKit. Pentru – multi Pentru multe relatii nu sunt create in mod explicit. Seam creeaza si gestioneaza relatii individuale numai pe serverele CloudKit.

Exemplu -> Daca un angajat are o relatie individuala cu departamentul, iar departamentul are o relatie mai mare cu angajatul decat Seam il va crea pe primul pe serverele CloudKit. Se va completa complet mai tarziu, utilizand relatia unu la unu. Daca toti angajatii unui departament sunt accesati, Seam il va indeplini prin preluarea tuturor angajatilor care apartin acelui departament.

Nota: trebuie sa creati relatii inverse in modelul CoreData al aplicatiei dvs. sau Seam nu ar putea traduce modelele CoreData in CloudKit Records. Pot aparea erori neasteptate si optiunea de date.

Notiuni de baza

Descarcati proiectul demo. Rulati-l si vedeti magia pe masura ce se intampla.

FAQ

Suport tvOS?

tvOS nu ofera stocare locala persistenta. Seam foloseste fisierul SQLITE pentru a pastra o copie locala a bazei de date, ceea ce nu este posibil cu tvOS.

Aplicatii

O lista de aplicatii care utilizeaza Seam .

Autor

Seam este detinut si intretinut de Nofel Mahmood.

Il poti urmari pe Twitter si Medium

Licenta

Seam este disponibil sub licenta MIT. Consultati fisierul LICENTA pentru mai multe informatii.