My app has CKSubscriptions to record changes. When changes occur, a push notification is received, and a CKFetchNotificationChangesOperation is created with the last saved serverChangeToken to retrieve the latest notifications.
This all works fine, except for when I log off iCloud from the settings app. If I log off iCloud, my app doesn't fetch any of the notifications received from the time I logged off until the time I log back into iCloud and relaunch my app. However, when I check the data on the serverChangeToken, it's the same data that was saved before I logged out of the iCloud. I can also receive new notifications once I relaunch the app, but I lose all the notifications received after I logged off.
Does anyone know if CKSubscription push notifications get dropped somehow once I log off iCloud? That doesn't make much sense, since the CKFetchNotificationChangesOperation is supposed to fetch all the notifications based on the provided serverChangeToken.