Requisitos
Certifique-se de ter o seguinte antes de começar:- Um aplicativo iOS ou macOS.
- Uma Conta Apple Developer paga com acesso de Admin.
- Uma Conta OneSignal.
- Um mac com Xcode 14+.
- O Bundle ID para seu app target conforme definido no Xcode.
- Um projeto Xcode com Push Notification capability habilitada.
Criar uma Solicitação de Assinatura de Certificado (CSR)
Primeiro você precisa criar um arquivo.certSigningRequest no macOS.
- Abra Applications > Utilities > Keychain Access.
- Na barra de menu, clique em Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority…

- Preencha os campos obrigatórios:
- User Email Address:
[email protected] - Common Name: Seu nome ou o nome para o certificado
- CA Email Address: Deixe em branco
- Request is: Selecione Saved to disk
- User Email Address:

- Clique em Continue, escolha um local para salvar o arquivo
.certSigningRequeste clique em Save.
Habilitar push capabilities para o aplicativo
Pule esta seção se você usa Automatically manage signing no Xcode.
- Vá para a seção Identifiers do portal Apple Developer, localize e selecione o App ID do seu aplicativo na lista.

- Habilite a capability Push Notifications marcando a caixa.

Criar um certificado push
Siga estes passos para gerar o certificado SSL do Apple Push Notification service (APNs):- Visite a página de Certificados da Apple.
- Clique no botão plus (+) para criar um novo certificado.
-
Em Services, selecione:
- Apple Push Notification service SSL (Sandbox & Production)
- Em seguida, clique em Continue

- Selecione seu App ID na lista e clique em Continue.

- Faça upload do arquivo
.certSigningRequestgerado anteriormente.

- Clique em Continue, depois clique em Download para salvar o arquivo
.cerresultante no seu computador.

.cer na próxima seção para criar seu certificado .p12.
Criar uma chave privada e exportar o certificado .p12
-
Clique duas vezes no arquivo
.cerbaixado para importá-lo para o Keychain Access. -
No Keychain Access, navegue para:
- Keychains > Login
- Category > My Certificates
- Localize o certificado chamado Apple Push Services.
- Clique com o botão direito no certificado e selecione Export.

-
Escolha um local para salvar o arquivo e selecione o formato de arquivo como
.p12. -
Quando solicitado, defina uma senha para o arquivo
.p12. Você precisará desta senha ao fazer upload para o OneSignal.

Fazer upload do .p12 para o OneSignal
- No seu painel do OneSignal, vá para seu aplicativo > Settings > Push & In-App > Apple iOS.
- Faça upload do arquivo
.p12(e insira a senha se você definiu uma). Clique em Save.
Você configurou com sucesso a autenticação APNs usando um certificado .p12 no OneSignal.Seu aplicativo iOS agora está pronto para enviar e receber notificações push! 🎉
Solução de problemas do .p12
Erro de formato de certificado inválido
Causa: O arquivo enviado não está no formato.p12.
Solução: Certifique-se de exportar o certificado do Keychain Access como .p12 (não .cer ou .pem).
”Incorrect password” ao fazer upload para o OneSignal
Causa: A senha foi inserida incorretamente ou não foi definida. Solução:- Tente exportar novamente e defina uma nova senha.
- Certifique-se de que não há espaços extras ao colar.
- Se estiver usando o Provisionator, a senha é mostrada na UI.
Chave privada ausente no arquivo exportado
Causa: O certificado foi importado mas não foi pareado com uma chave privada. Solução:- Certifique-se de gerar o CSR do Keychain Access na mesma máquina.
- Após baixar o arquivo
.cer, clique duas vezes para instalar e verifique se a chave aparece em My Certificates.
Notificações push não funcionam após upload
Causa: App ID incorreto ou Provisioning Profile sem capabilities. Solução:- Confirme se o
.p12corresponde ao App ID usado no aplicativo. - No Apple Developer Portal, certifique-se de que o App ID tem Push Notifications habilitadas.
- Certifique-se de que o Provisioning Profile inclui Push.
Certificado expirado
Causa: O certificado.p12 não é mais válido.
Solução:
- Vá para Apple Developer > Certificates e verifique a expiração.
- Revogue o certificado antigo e crie um novo.
Próximos passos
Configuração do SDK iOS
Instale o SDK do OneSignal, inicialize-o no seu aplicativo e envie uma notificação de teste.
Configuração do SDK mobile
Escolha sua plataforma e siga o guia completo de integração do SDK para Android, iOS ou frameworks multiplataforma.
Perguntas frequentes
Quando meu certificado .p12 expira e como posso renová-lo?
Certificados .p12 expiram um ano após a criação. Para renovar, gere um novo CSR, crie um novo certificado push no Apple Developer, exporte-o como .p12 e faça o novo upload para o seu painel do OneSignal. Defina um lembrete no calendário para evitar interrupções. Como alternativa, mude para uma chave .p8, que não expira.Devo usar .p8 ou .p12?
O OneSignal recomenda chaves .p8 para a maioria dos aplicativos. Uma chave .p8 não expira, funciona em todos os aplicativos da sua conta Apple Developer e é mais simples de gerenciar. Um certificado .p12 é específico para cada aplicativo e deve ser renovado anualmente. Consulte o guia de chave .p8 para instruções de configuração.Preciso de um provisioning profile e como criá-lo?
Sim, a Apple requer diferentes tipos de profiles para desenvolvimento, testes (Ad Hoc) e distribuição para a App Store. No Xcode, você deve ser capaz de selecionar Automatically manage signing para criar um automaticamente.