ID: 0x

|

DATE:

,

Web push notifications no iOS e novidades do iOS 16.4

AUTHOR:

|

READ_TIME: ~5 MIN

As web push notifications no iOS estão disponíveis para aplicativos web adicionados à tela inicial desde o iOS e iPadOS 16.4. A permissão deve partir de uma ação do usuário, como tocar em “Inscrever-se”. Este artigo explica os requisitos e preserva o contexto do lançamento de 2023.

vídeo sobre web push notifications no iOS

O suporte a Web Push chegou aos iPhones e iPads no iOS 16.4, em 2023. O anúncio do WebKit também apresentou outros recursos da versão, listados abaixo como contexto histórico:

  • Melhorias em expressões regulares
  • Import de maps
  • OffscreenCanvas
  • Media Queries Range syntax
  • @property
  • font-size-adjust
  • entre outros recursos

Para solicitar o comportamento de aplicativo web, configure o manifest com display igual a standalone ou fullscreen. Isso diferencia o app instalado de um simples favorito na tela inicial, como explica o anúncio do WebKit.

Como funcionam as web push notifications no iOS?

No iOS e iPadOS 16.4 ou posterior, Web Push exige um aplicativo web adicionado à tela inicial. A implementação combina um service worker, a Notifications API e a Push API. A documentação da Apple detalha os requisitos do cliente e do servidor.

O aplicativo deve solicitar permissão após uma interação direta, como tocar em um botão. Depois da autorização, o usuário pode gerenciar as notificações nas configurações do sistema. Abrir o site em uma aba comum não substitui a instalação na tela inicial.

As notificações do aplicativo web aparecem na tela bloqueada e na central de notificações. Elas também podem aparecer em um Apple Watch sincronizado com o iPhone.

Web push no iOS utiliza o mesmo serviço de push notifications que ativa push em apps nativos, mas você não precisa ser um membro do apple developer program para utilizar o recurso. Apenas se certifique de permitir URLs de *.push.apple.com se você estiver no controle dos endpoints push do seu servidor. Muitas vezes não é preciso se preocupar com isso caso utilizar alguma plataforma de envio de push notifications.

Suporte ao recurso de foco do iOS

As notificações de aplicativos web respeitam o modo Foco do iOS. Por isso, uma permissão concedida não significa que todo aviso aparecerá imediatamente: o usuário pode limitar quando recebe notificações.

Badging API no iOS

Desde o iOS 16.4, aplicativos web na tela inicial podem usar a Badging API para mostrar uma contagem no ícone. Para entender a implementação, consulte o artigo sobre Badging API.

vídeo sobre como implementar badging API

Para alterar as marcações dos ícones do seu app, trabalhamos com as funções setAppBadge e clearAppBadge para alterar a contagem de notificações.

A permissão para badging API é concedida da mesma forma em outras aplicações iOS nativas. Assim que um usuário der permissão para permitir notificações, o ícone na homescreen irá ativar a badging API.

Manifest ID

A engine do safari para iOS adiciona suporte para id member uma padronização do Web App Manifest. É uma string na forma de URL que atua como identificador exclusivo do aplicativo da Web, destinado a ser usado por um sistema operacional da maneira desejada. O manifest ID pode ser utilizado para sincronizar as configurações de Foco do iOS.

O iOS oferece suporte a várias instalações do mesmo aplicativo web desde as suas primeiras versões, muitas vezes com o intuito de permitir o uso de diferentes contas em uma mesma aplicação.

Adicionando um aplicativo web à tela inicial os usuários tem a oportunidade de alterar o nome da sua aplicação, assim o manifest ID é importante para identificação do aplicativo.

Suporte a homescreen para navegadores de terceiros

Desde o iOS 16.4, navegadores de terceiros também podem oferecer a opção de adicionar sites à tela inicial. O manifest ou os metadados do site definem se ele abre como aplicativo web ou como um favorito.

Se não houver nenhuma configuração o site será exibido como uma atalho para uma página web no Safari, ou no navegador padrão do usuário.

Novo ícone alternativo

Se o site não fornecer ícones, o iOS 16.4 e versões posteriores podem criar um monograma com a primeira letra do nome e uma cor do site. Antes dessa versão, o fallback usava uma captura da página.

Os ícones do manifest são suportados desde o iOS 15.4. Você também pode usar apple-touch-icon no head. Quando as duas opções estão presentes, apple-touch-icon tem prioridade, segundo o WebKit.

Outros recursos introduzidos no iOS 16.4

Além de suporte a web push notifications no iOS 16.4 também temos suporte as seguintes APIs:

  • Screen Wake Lock API
  • Screen Orientation API
  • User Activation API
  • Web codecs API

A plataforma iOS apresentou significativas melhorias nos últimos anos, muitos dos recursos que conseguimos implementar em progressive web apps você consegue conferir aqui no blog e em meu canal do youtube.


ENCODING: UTF-8

|

CHMOD: 644

// RELATED_ENTRIES

NEXT_READS

> cat ./comments.log

LOADING_ENTRIES…


> write ./comments.log –append

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *