EVCloudKitDao will let you use CloudKit as easy as possible by using reflection for parsing from and to CKRecord and generic methods for handling all actions. As a sample app there is a complete functional chat application which will store data and pictures in CloudKit and use subscriptions for receiving push notifications.
The library has the following features:
Main features of EVCloudKitDao: - simple singleton access to your public or private database - Object mapping: You do not have to parse from and to CKRecord (is based on reflection) - Generic and simplified query handling - Error handling (separate completionHandler and errorHandler code blocks) - Storing CKReference objects - Storing CKAsset objects - Organising subscription - Handling incoming notifications - (Re)setting the badge
Main features of EVCloudKitData: - Use just one predicate for a query, subscription and processing incoming notifications. - it's only one method call with a couple of callback events - it will store the fetched data collection in memory. - notifications will update the data collections and call the appropriate events. - local updates will also update the data collection and call the appropriate events - since all data is processed all callback events will be executed on the mainQueue - caching of the results to file for speady app restart. (You can set the caching strategy)
Main features of EVReflection: - Parsing objects based on NSObject to a dictionary. - Parsing a dictionary back to an object. - Creating a class from a string value and get the string value for a class. - Support NSCoding methods encodeWithCoder and decodeObjectWithCoder - Supporting Printable, Hashable and Equatable while using all properties. (Support for Set in Swift 1.2?)