Skip to content
This repository was archived by the owner on Apr 14, 2026. It is now read-only.
This repository was archived by the owner on Apr 14, 2026. It is now read-only.

It seems that Apple revokes our push notifications permissions for receiving silent canceling push notifications #1511

@SleepySquash

Description

@SleepySquash

Summary

It seems that Apple revokes our push notifications permissions for receiving silent canceling push notifications. Apple states to disallow silent handling of push notifications:

The Web Push API is not an invitation for silent background runtime, as that would both violate a user’s trust and impact a user’s battery life.

Notice we are explicitly stating that we promise to always make pushes user visible. While the standard for the JavaScript Push API optionally accommodates silent JavaScript runtime in response to a push, most browsers do not support that. Safari does not support that.

Quoted from: https://meta.discourse.org/t/ios-notifications-can-lose-permission-to-push-if-the-user-is-currently-active/290225?tl=en

Steps to reproduce

  1. Set up a PWA on iOS, sign in into an account and agree to receive notifications.
  2. Close the PWA and receive some pushes, notice the pushes are coming.
  3. Sign in from another device to the exact account and read some chats.
  4. After ~3rd read silent push notifications the PWA might stop receiving the push notifications.

What is the current bug behavior?

PWA stops receiving pushes due to Apple revoking the permissions since we're using silent pushes to canceled already read push notifications.

What is the expected correct behavior?

PWA receives the pushes always.

Relevant logs and/or screenshots

From the logs it seems that indeed the permission isn't granted.

Possible fixes

  1. Display anything when receiving canceling push notifications instead of silently doing the canceling.
  2. Stop receiving canceling pushes on iOS?

Metadata

Metadata

Assignees

Labels

bugBugs and incorrectness problemsk::UI/UXUI (user interface) and UX (user experience) changesplatform::iosSpecific to iOS platformplatform::webSpecific to Web platform

Type

Projects

Status

First priority

Relationships

None yet

Development

No branches or pull requests

Issue actions