CloudKit public database subscription

I'm trying to save a CKDatabaseSubscription by calling publicDatabase.save(subscription:_completionHandler:_), but I'm getting an error from the call back:

"Metasync subscriptions are not allowed in public database".

The subscription succeeds if I saved it to the shared, or the private database.


I'm following Apple's guidelines. https://developer.apple.com/library/content/documentation/DataManagement/Conceptual/CloudKitQuickStart/SubscribingtoRecordChanges/SubscribingtoRecordChanges.html#//apple_ref/doc/uid/TP40014987-CH8-SW1

Accepted Reply

CKDatabaseSubscriptions aren't supported in the public database, as the error indicates. For the public database you would need to use a CKQuerySubscription instead.

Replies

CKDatabaseSubscriptions aren't supported in the public database, as the error indicates. For the public database you would need to use a CKQuerySubscription instead.

Are you sure about this? According to this WWDC video, public database subscriptions are allowed: https://developer.apple.com/videos/play/wwdc2016-231/?time=454


The exact quote from the talk: This allows you to subscribe to any change across an entire database, and it works in a private database, in a shared database.

Can you please confirm?

Private and shared - not private and public. The database types are private, shared and public.