Post

Replies

Boosts

Views

Activity

Live Activity PushType.channel updates silently not delivered on some devices, despite successful activity creation
Hi all, We're seeing an issue where Live Activity content-state push updates sent via PushType.channel(_:) are not consistently delivered to all devices subscribed to the same channel — even though Activity.request() succeeds on every device, and the affected/unaffected devices are both on recent iOS versions well above the 18.1 minimum for channel-based push. Setup: Our backend broadcasts content-state updates to all devices subscribed to a given channel. Activity creation succeeds normally on the affected device, but it never receives a single subsequent update — the activity eventually goes .stale after its staleDate elapses, despite our backend confirming it sent an update to that channel. What we've verified so far: Activity.request() succeeds locally on the affected device, no error thrown. We instrument ContentState's Decodable init(from decoder:) to log every time ActivityKit attempts to decode an incoming push. On the affected device, this log never fires — so no push payload is ever being handed to ActivityKit at all on that device. It's not a decode/payload-format issue. A second device on the identical app build and channel setup receives updates normally in the same window — rules out a backend-wide outage. Both devices are on recent iOS (affected: iPhone 13 Pro Max, iOS 26.5.2 / unaffected: iPhone 15 Pro Max, iOS 26.6) — rules out OS version threshold. No logs, crash reports, or console output of any kind on the affected device around when the update should have arrived — completely silent failure. Question: Has anyone run into a device silently failing to receive PushType.channel broadcast updates like this? Are there known conditions (notification permissions, Low Power Mode, Background App Refresh, channel subscription expiry/limits, etc.) that could cause this? Is there any client-side API to check the health/status of a device's channel subscription, to distinguish "not subscribed," "subscription expired," and "subscribed but delivery failed"? Any pointers appreciated — happy to share more details if useful.
0
0
69
3h
Live Activity PushType.channel updates silently not delivered on some devices, despite successful activity creation
Hi all, We're seeing an issue where Live Activity content-state push updates sent via PushType.channel(_:) are not consistently delivered to all devices subscribed to the same channel — even though Activity.request() succeeds on every device, and the affected/unaffected devices are both on recent iOS versions well above the 18.1 minimum for channel-based push. Setup: Our backend broadcasts content-state updates to all devices subscribed to a given channel. Activity creation succeeds normally on the affected device, but it never receives a single subsequent update — the activity eventually goes .stale after its staleDate elapses, despite our backend confirming it sent an update to that channel. What we've verified so far: Activity.request() succeeds locally on the affected device, no error thrown. We instrument ContentState's Decodable init(from decoder:) to log every time ActivityKit attempts to decode an incoming push. On the affected device, this log never fires — so no push payload is ever being handed to ActivityKit at all on that device. It's not a decode/payload-format issue. A second device on the identical app build and channel setup receives updates normally in the same window — rules out a backend-wide outage. Both devices are on recent iOS (affected: iPhone 13 Pro Max, iOS 26.5.2 / unaffected: iPhone 15 Pro Max, iOS 26.6) — rules out OS version threshold. No logs, crash reports, or console output of any kind on the affected device around when the update should have arrived — completely silent failure. Question: Has anyone run into a device silently failing to receive PushType.channel broadcast updates like this? Are there known conditions (notification permissions, Low Power Mode, Background App Refresh, channel subscription expiry/limits, etc.) that could cause this? Is there any client-side API to check the health/status of a device's channel subscription, to distinguish "not subscribed," "subscription expired," and "subscribed but delivery failed"? Any pointers appreciated — happy to share more details if useful.
Replies
0
Boosts
0
Views
69
Activity
3h