ServiceWorker registration fails in Facebook/Instagram in-app browser on iOS
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- angular, firebase, typescript
- Domínio
- frontend
Direção de pesquisa
Comece pela chamada de inicialização de messaging-service mostrada na issue e reproduza-a no navegador integrado ao app iOS do Facebook/Instagram. Rastreie como navigator.serviceWorker é acessado; está concluído quando a inicialização não lançar mais erros quando a API não estiver disponível e o comportamento de push tiver sido verificado onde houver suporte.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
When using the Firebase Messaging service with Angular 19.1.4 in the Facebook/Instagram in-app browser on iOS devices, the following error occurs:
TypeError: undefined is not an object (evaluating 'navigator.serviceWorker.addEventListener')
Environment
- Platform: iOS
- Browser: Facebook/Instagram in-app browser
- Framework: Angular 19.1.4
- Dependencies:
- @angular/core: 19.1.4
- @angular/common: 19.1.4
- @angular/platform-browser: 19.1.4
- Service: Firebase Cloud Messaging
Technical Details
The error occurs during the messaging service initialization when attempting to add an event listener to the ServiceWorker. The specific line causing the issue is:
navigator.serviceWorker.addEventListener('message', e => messageEventListener(messaging as MessagingService, e));
Root Cause
The Facebook/Instagram in-app browser on iOS does not support or properly expose the ServiceWorker API, causing navigator.serviceWorker to be undefined. This issue persists even with the latest Angular 19 framework.
Impact
- Firebase Cloud Messaging service initialization fails
- Push notifications cannot be registered or received
- Affects only users accessing the Angular 19 application through Facebook/Instagram in-app browser on iOS devices
- Linguagem predominante
- TypeScript
- Estrelas
- 7.8k
- Forks
- 2.2k
- Merge médio
- 3d 6h
- PRs com merge (30d)
- 5
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de angular/angularfire
-
comp: build/pipeline type: bug version: current (v17+)
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
angular/angularfire#3766 ·
-
comp: schematics type: bug version: current (v17+)
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 76/100
angular/angularfire#3768 ·
-
comp: docs type: chore version: current (v17+)
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 58/100
angular/angularfire#3764 ·
-
comp: firestore comp: ssr priority: P0 (critical) type: feature version: current (v17+)
angular/angularfire#3757 · 1 responsável ·
-
Six `firebase` entry points have no `@angular/fire` equivalent, so their exports are unreachable Abertacomp: core type: feature
angular/angularfire#3755 · 1 responsável ·
Todas as issues de angular/angularfire
Issues semelhantes
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
-
Mend: dependency security vulnerability untriaged
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100