I'm trying to create a CKShare on a set of CKRecords using CloudKit. I've made it through most of the workflow:
- create a 'root_record' that all shared records will identify as parent
- add several records and identify 'root_record' as parent
- create CKShare on 'root_record' and present the share dialog with UICloudSharingController
- include mandatory itemTitleForCloudSharingController & failedToSaveShareWithError
- include - (void)application:(UIApplication *)application userDidAcceptCloudKitShareWithMetadata: in appdelegate
- clicked backgroundmodes > remote notification in capabilities
I get the share dialog on device A, text or email the share to device B as expected. On device B, I get:
Open "My_Title_String"? > Not Now | Open
But when I choose 'Open', I get:
Update "App_Name" | sharer shared this. To open it, you'll need the latest version of "app_name". > Got To App Store | Not Now
I've tried upping the build number, deleting app + reinstalling & installing from TestFlight, but I can't get the app to invoke on Device B so - (void)application:(UIApplication*)application userDidAcceptCloudKitShareWithMetadata: never gets called.
Any advice on where I've gone wrong?
I hadn't included CKSharingSupported entry in my Info.plist.
I can't find the documentation of this flag anywhere in Apple's docs, but found it in another posting and it did the trick. Hope this helps someone else save some time.