Search code examples
iosapple-push-notificationspushkit

iOS PushKit (VoIP Push Notifications) Quality of Service


What is the PushKit QoS policy? The policy for the regular push notification is defined as store-and-forward.

Apple Push Notification service includes a default Quality of Service (QoS) component that performs a store-and-forward function.

If APNs attempts to deliver a notification but the device is offline, the notification is stored for a limited period of time, and delivered to the device when it becomes available.

Only one recent notification for a particular app is stored. If multiple notifications are sent while the device is offline, each new notification causes the prior notification to be discarded. This behavior of keeping only the newest notification is referred to as coalescing notifications.

If the device remains offline for a long time, any notifications that were being stored for it are discarded.

What about PushKit notification? Is it the same as for regular push notifications?


Solution

  • I performed the following steps to verify the issue myself

    1. Put the device in airplane mode
    2. Sent at least 5 different PushKit notifications
    3. Wait for about 3 minutes
    4. Cancel the airplane mode

    Only the last PushKit notification arrived which is compatible with the store-and-forward Apple's policy (which is specifically defined for regular remote push notifications).