Pular para o conteúdo principal
Este guia explica como migrar de sua plataforma de mensagens atual para o OneSignal com interrupção mínima. É destinado a:
  • Desenvolvedores implementando o SDK OneSignal
  • Profissionais de marketing gerenciando campanhas e análises

Pré-requisitos

Antes de começar:

Passos de migração

1. Audite sua configuração de mensagens atual

Antes da migração, faça um inventário da sua implementação atual: Para desenvolvedores:
  • As plataformas que você suporta: iOS, Android, Web, email, SMS, etc.
  • O código que manipula eventos de push e mensagens in-app:
    • Exibição em primeiro plano e manipulação de cliques
    • Uso de deep link para push, email, etc.
    • Manipulação de token push e payload
  • Como você está coletando endereços de email, números de telefone, tokens push, etc.
  • Domínios de email e propriedade de DNS
  • Remetentes SMS e mecanismos de opt-in
Para profissionais de marketing:
  • Os tipos de mensagens que você envia (transacionais, marketing, etc.) e os templates para cada um
  • Como você segmenta e direciona usuários
  • As análises ou métricas de conversão que você rastreia

2. Mapeie sua terminologia para o OneSignal

A maioria das plataformas de mensagens compartilha conceitos semelhantes com nomes diferentes. Veja como os termos do OneSignal se relacionam com o que você provavelmente já usa:
Your platformOneSignal termDetails
User / contact / profileUserIdentificado por um External ID. Contém propriedades e subscriptions.
Push token, email address, phone numberSubscriptionUm canal pelo qual um usuário pode receber mensagens (mobile push, web push, email, SMS).
Audience, cohort, listSegmentUm grupo dinâmico de usuários com base em propriedades ou comportamentos compartilhados.
Custom attribute, user propertyTagUm par chave-valor associado a um usuário para segmentação e personalização.
Tracked action, analytics eventCustom EventUma ação realizada por um usuário, usada para segmentação e acionamento de mensagens.

3. Adicione o SDK OneSignal (desenvolvedores)

Configure o SDK OneSignal em seu aplicativo mobile e/ou site web:

Configuração do SDK Mobile

Necessário para mensagens in-app e recomendado para notificações push no iOS e Android.

Configuração do SDK Web

Necessário para notificações web push.
Após integrar o SDK, use os métodos a seguir para identificar usuários e coletar dados de subscription:
  • login — Define o External ID para identificar um usuário entre dispositivos e canais.
  • addEmail — Cria uma subscription de email a partir de um endereço coletado no seu aplicativo ou site.
  • addSms — Cria uma subscription de SMS a partir de um número de telefone coletado no seu aplicativo ou site.
Consulte as referências do SDK para detalhes de implementação:

Referência do SDK Mobile

Métodos para login, addEmail, addSms, acesso ao token push e listeners de notificação.

Referência do SDK Web

Métodos para login, addEmail, addSms e tratamento de eventos de web push.

4. Remova sua implementação legada

Existem dois caminhos de migração:
  • Migração limpa — Remova completamente o SDK antigo e substitua-o pelo OneSignal em um único lançamento de aplicativo. Esta é a abordagem recomendada.
  • Migração em fases — Mantenha ambos os SDKs temporariamente, enviando de cada provedor para grupos de usuários diferentes com base na versão do aplicativo. Use isso somente se não for possível remover o SDK antigo em um único lançamento.
Em ambos os casos, remova os métodos e APIs legados para coletar tokens push, endereços de email e números de telefone. A coleta de tokens push, em particular, pode criar conflitos com o SDK OneSignal.

Conflitos e formato de token push

Remova todo o código legado que gera tokens push. Permita apenas que o OneSignal gere o token push, o que acontece automaticamente quando o SDK é inicializado. Se necessário, use nosso SDK para obter o token e enviá-lo para seu outro provedor ou backend. Métodos para fazer isso:
  • Obtenha o identificador de token push do dispositivo usando nosso SDK Mobile Frontend
  • Obtenha o identificador do dispositivo usando nossa API View user
Os formatos de token push diferem por plataforma (iOS APNS vs. Android FCM). Consulte Push token formats para detalhes.

Conflito com o Firebase Messaging SDK

Se o seu aplicativo inclui o Firebase Messaging SDK (firebase_messaging ou um FirebaseMessagingService personalizado), ele pode interceptar mensagens FCM antes que o OneSignal as processe. Isso faz com que as notificações apareçam como “Entregues” no OneSignal, mas nunca sejam exibidas no dispositivo. Para resolver isso:
  • Remova os receivers legados do Firebase do AndroidManifest.xml.
  • Não chame FirebaseMessaging.getToken() ou FirebaseMessaging.deleteToken().
  • Certifique-se de que o OneSignal seja o único SDK gerenciando o ciclo de vida do token push.
Consulte Firebase Messaging SDK conflict para as etapas completas de solução de problemas.

Manipulação de payload push

Se estiver usando o OneSignal e outro provedor push em paralelo, você precisará impedir que seu outro SDK processe notificações do OneSignal para evitar duplicatas. O payload push do OneSignal contém uma chave "custom" no rawPayload que o distingue de outros provedores. Se estiver executando ambos os SDKs, atualize seu handler de notificação para verificar essa chave, de modo que seu SDK legado não processe notificações do OneSignal. Consulte a referência do payload OSNotification para detalhes.

Migração em fases (apenas aplicativos mobile)

Uma abordagem comum é continuar enviando do seu provedor antigo para usuários na versão antiga do aplicativo e do OneSignal para usuários na versão mais recente. No entanto, se você precisar manter ambos os SDKs por um tempo limitado:
  • Deixe o OneSignal gerenciar tokens push exclusivamente. Compartilhe o token com seu sistema antigo se necessário (consulte Conflitos de token push acima).
  • Atualize os filtros de payload para que seu SDK legado ignore os pushes do OneSignal (consulte Manipulação de payload push acima).
  • Envie do seu provedor antigo para usuários na versão antiga do aplicativo e do OneSignal para usuários na versão mais recente.
  • Defina uma data de corte clara e um plano de eliminação gradual.

5. Migração de web push

Se você está usando o mesmo site HTTPS origin, os assinantes são silenciosamente adicionados ao OneSignal em sua próxima visita — nenhum prompt é exibido e eles podem receber push imediatamente. Subscriptions de web push não podem ser importadas devido a restrições de segurança do navegador. Antes que o OneSignal possa assumir, você deve cancelar o registro dos seus service workers push antigos:
  1. Remova o código do SDK legado e os arquivos de Service Worker do seu site.
  2. Adicione o trecho a seguir para cancelar o registro do Service Worker antigo. Substitua sw.js pelo nome do arquivo de Service Worker do seu provedor legado.
if ('serviceWorker' in navigator) {
  navigator.serviceWorker.getRegistrations().then(function(registrations) {
    for (let registration of registrations) {
      if (registration.active.scriptURL.includes("sw.js")) {
        registration.unregister();
      }
    }
  });
}

Migrando entre aplicativos OneSignal

Se você está movendo assinantes de um aplicativo OneSignal (App A) para outro (App B):
  • Subscriptions de web push não podem ser transferidas diretamente entre aplicativos. Cada subscription está vinculada tanto ao domínio (origin) do seu site quanto ao OneSignal App ID.
  • Para migrar, atualize o código de inicialização do OneSignal no seu site para usar o appId do App B:
OneSignal.init({
  appId: "YOUR_APP_B_ID",
});
  • Quando um usuário revisita seu site, a permissão push existente do navegador permitirá que o OneSignal os registre silenciosamente no App B.
  • Nenhum novo prompt de permissão será exibido, mas os usuários devem visitar seu site pelo menos uma vez para que a subscription seja criada no App B.
  • Assinantes continuarão a aparecer no App A até se tornarem inativos.
Best practice: Pare de enviar do App A assim que confirmar que usuários suficientes migraram. Monitore as contagens de assinantes em ambos os aplicativos para validar o progresso da migração.

6. Configuração de email e SMS

Se você está enviando emails e/ou SMS com o OneSignal, você precisará seguir nossos guias de Configuração de Email e Configuração de SMS. Migrar seu domínio de envio de email atual para o OneSignal requer a atualização dos registros DNS. Você pode configurar vários remetentes de email no OneSignal, se necessário. Migrar remetentes SMS pode levar tempo. Entre em contato com support@onesignal.com se precisar de assistência.

7. Importar usuários existentes (opcional)

Importar usuários inscritos que estiveram ativos em seu aplicativo nos últimos 270 dias ajudará a minimizar interrupções durante a migração. Recomendamos que você comece importando usuários de teste conhecidos, depois importe os usuários restantes antes do lançamento do aplicativo.

Considerações de plataforma

  • Endereços de email devem ser de usuários ativos e válidos. Não importe endereços de email que nunca clicaram ou abriram emails antes.
  • Números de telefone devem estar em um formato específico e os usuários devem ter consentido em receber SMS.
  • Subscriptions iOS podem começar a receber notificações push imediatamente após a importação. Recursos como rastreamento de cliques de notificação e entregas confirmadas requerem que nosso SDK esteja ativo no dispositivo.
  • Subscriptions Android/Huawei/Amazon devem ter nosso SDK ativo no dispositivo para receber notificações, seja através de uma atualização automática ou manual.
  • Subscriptions web não podem ser importadas. Se você seguir o descrito acima em Migração de web push, a subscription de web push será criada e o token push obtido via nosso SDK quando o usuário retornar ao site.

Passos de importação

  1. Revise os documentos de Users e Subscriptions.
  2. Exporte dados de usuários de teste do seu sistema antigo.
  3. Formate os dados para a API Create user do OneSignal.
  4. Importe usuários de teste primeiro. Após a verificação, repita o processo para os usuários restantes antes do lançamento.
Cada usuário precisa de um external_id (identidade) e pelo menos uma subscription com um type e token (ou email/phone_number). Consulte a referência da API Create user para campos obrigatórios, tipos de subscription suportados e exemplos de payloads.

8. Testar a migração

Testes completos são cruciais para uma transição suave.
  1. Habilite o Debug Logging no SDK OneSignal.
  2. Teste em dispositivos reais para todas as plataformas (Android, iOS, Web, etc.).
  3. Verifique o tratamento de notificações em primeiro plano e em segundo plano.
Cenários de teste para equipes de desenvolvimento e marketing:
  • Envie notificações de teste do OneSignal para usuários importados antes de adicionar o SDK OneSignal.
    • Você deve receber o push no iOS, mas não obterá entrega confirmada ou análises de cliques.
    • Você pode receber o push no Android se tiver outro SDK push e ainda não implementou os requisitos de Manipulação de payload. A notificação provavelmente estará com dados faltando e não funcionará como esperado quando clicada.
  • Envie notificações de teste do OneSignal para usuários importados depois de adicionar o SDK OneSignal.
    • Você deve receber o push em Android e iOS junto com entrega confirmada e análises de cliques.
  • Teste o comportamento de notificação com o aplicativo em diferentes estados.
  • Verifique se deep links e ações personalizadas funcionam corretamente.
Se estiver usando múltiplos provedores:
  • Envie de ambos, seu provedor atual e o OneSignal.
  • Verifique se há notificações duplicadas.
  • Verifique se as notificações de cada provedor são exibidas corretamente.
  • Teste cenários de login/logout de usuário.

Checklist de pré-lançamento

Para profissionais de marketing:
  • Crie um plano de mensagens para incentivar atualizações do aplicativo
  • Considere usar push e mensagens in-app do seu sistema antigo para lembrar gentilmente os usuários a atualizarem.
Para desenvolvedores:
  • Verifique se as análises de push e mensagens in-app estão funcionando como esperado.
    • Eventos de clique e entrega confirmada são rastreados em Android e iOS.
  • Verifique se eventos de clique e eventos recebidos em primeiro plano são tratados corretamente para mensagens enviadas de ambos os provedores.
  • Se estiver importando usuários, exporte usuários Android e iOS que estiveram ativos em seu aplicativo nos últimos 270 dias para evitar a importação de tokens expirados. Consulte FCM Expired Token FAQ para detalhes.

Lance seu aplicativo/site

  • A maioria dos usuários terá seus aplicativos atualizados automaticamente para a versão mais recente.
  • Quando os usuários abrirem seu aplicativo atualizado, eles não serão solicitados a se inscrever em notificações push se as permissões já foram concedidas — seja através dos prompts de permissão necessários ou das configurações de notificação do aplicativo.
Se você não importou usuários:
  • Os usuários serão criados automaticamente no OneSignal quando abrirem a versão atualizada do aplicativo. Eles não serão solicitados para push se já estiverem inscritos anteriormente.
  • Você precisará esperar que eles abram o aplicativo atualizado antes de poder enviar mensagens para eles.
  • Continue enviando notificações e mensagens in-app do provedor push anterior por alguns dias até que usuários suficientes apareçam no OneSignal. Envie alertas adicionais pedindo que atualizem o aplicativo para a versão mais recente.

Monitorar resultados

Para desenvolvedores:
  • Monitore taxas de erro e crashes após a implantação.
  • Fique atento a invalidações inesperadas de token.
  • Verifique análises de integração do SDK.
Para profissionais de marketing:
  • Marque a data de lançamento do aplicativo e confirme com seus desenvolvedores qual caminho de migração foi adotado (limpa ou em fases) e se os usuários foram importados.
  • Na sua plataforma anterior, crie um segmento de usuários que ainda não atualizaram para a nova versão do aplicativo. Continue enviando do seu provedor antigo para esse grupo, incentivando-os a atualizar.
  • Pare de enviar do provedor anterior assim que as contagens de assinantes se estabilizarem no OneSignal.
  • Se estiver seguindo uma migração em fases, remova o SDK do provedor antigo no próximo lançamento do aplicativo após a data de corte.

Perguntas frequentes

Posso executar o OneSignal junto com meu provedor push atual?

Sim, mas apenas temporariamente. Executar dois SDKs push em paralelo pode causar conflitos de token e notificações duplicadas. Se você precisar de uma migração em fases, siga as orientações de Migração em fases para evitar conflitos e defina uma data de corte clara.

Posso importar assinantes de web push?

Não. As restrições de segurança do navegador impedem a transferência de subscriptions de web push entre provedores. Quando você integra o OneSignal em seu site, os assinantes existentes são silenciosamente re-registrados em sua próxima visita — nenhum novo prompt é exibido. Consulte Migração de web push.

Preciso solicitar permissão de push novamente após a migração?

Não. Se os usuários já concederam permissão de push ao seu aplicativo ou site, o OneSignal usa a permissão existente. Nenhum novo prompt é exibido.

É necessário aquecimento de email?

Não, se seu domínio de envio já tem uma reputação de envio estabelecida. O aquecimento só é necessário se você estiver usando um endereço IP dedicado.

Posso obter um endereço IP dedicado?

Sim, dependendo do seu tipo de plano e volume de envio. Entre em contato com seu gerente de conta para detalhes.

Por quanto tempo devo continuar enviando do meu provedor antigo?

Continue enviando do seu provedor antigo até que a maioria dos usuários tenha aberto o aplicativo atualizado com o SDK OneSignal. Monitore as contagens de assinantes em ambos os sistemas e pare de enviar do provedor antigo assim que os números se estabilizarem.
Você migrou com sucesso para o OneSignal! Para questões estratégicas sobre planejamento de migração, entre em contato com nossa equipe de sucesso do cliente para orientação personalizada.
Precisa de ajuda?Converse com nossa equipe de Suporte ou envie email para support@onesignal.comPor favor inclua:
  • Detalhes do problema que você está enfrentando e passos para reproduzir se disponível
  • Seu OneSignal App ID
  • O External ID ou Subscription ID se aplicável
  • A URL para a mensagem que você testou no Dashboard OneSignal se aplicável
  • Quaisquer logs ou mensagens de erro relevantes
Estamos felizes em ajudar!