Automate alert actions on iOS.
Inspired by: http://cydia.saurik.com/package/org.thebigboss.automa/
- Create your model with Xcode like you normally would in an app (yourmodel.xcdatamodeld).
- Use Xcode's managed object model compiler momc on your model.
Specify the sdk (preferably the latest) for --sdkroot and your minimum deployment target for --iphoneos-deployment-target.
/Applications/Xcode.app/Contents/Developer/usr/bin/momc --sdkroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk --iphoneos-deployment-target 10.0 /path/to/yourmodel.xcdatamodeld /path/to/some/folder/yourmodel.momd
- Copy yourmodel.momd to your Resources folder in your tweak (or somewhere else, just make sure it gets copied somewhere so you can access it on device).
- Create a NSManagedObjectModel.
NSURL *url = [NSURL fileURLWithPath:@"/path/to/yourmodel.momd"]; NSManagedObjectModel *model = [[[NSManagedObjectModel alloc] initWithContentsOfURL:url] autorelease];
- Create a store description and the persistent container.
NSURL *storeURL = [NSURL fileURLWithPath:@"path/to/some/directory/yourmodel.sqlite"]; NSPersistentStoreDescription *prop = [[[NSPersistentStoreDescription alloc] initWithURL:storeURL] autorelease]; self.container = [[[NSPersistentContainer alloc] initWithName:@"yourmodel" managedObjectModel:model] autorelease]; self.container.persistentStoreDescriptions = @[prop];
- Congrats! You can now complete the creation of the Core Data stack with
loadPersistentStoresWithCompletionHandler:
and create objects from your entities and save them. See AACoreDataStack.m for more details.