Guia básico para integração do SDK

Visão geral: Colabore com o seu programador de aplicações móveis ou CTV para integrar e instalar o SDK em aplicações Android ou iOS. Após completar as tarefas básicas de integração, a sua aplicação estará pronta para atribuição de instalação e medição dos eventos na aplicação.

Implementação da chave de desenvolvimento na sua aplicação

A AppsFlyer utiliza a chave de desenvolvimento para identificar exclusivamente a sua conta. A chave de desenvolvimento é obrigatória pois permite que o SDK envie e recupere dados associados à sua conta de forma segura. O seu programador deve instalar e integrar o SDK, além de incorporar a chave de desenvolvimento. 

Recuperar a chave de desenvolvimento

Antes que o seu programador possa instalar e integrar o SDK, é necessário recuperar a chave de desenvolvimento.

  1. Na AppsFlyer, no menu lateral, selecione Definições > Definições da Aplicação.
  2. Copie a chave de desenvolvimento e envie-a para o seu programador móvel.

Incorpore a chave de desenvolvimento

Providencie ao programador móvel as instruções necessárias para instalar e integrar o SDK.

Onde começar o SDK?

Ao planear a integração do SDK da AppsFlyer, a primeira decisão é sobre onde inicializar e começar o SDK no processo de arranque da sua aplicação.

O princípio básico é que o SDK deve começar a enviar dados assim que possível após o lançamento da aplicação. Isto garante que o SDK capture o evento de instalação e todos os outros eventos em aplicação que ocorram na sessão.

Contudo, para cumprir regulamentos de proteção de privacidade, como o RGPD e o CCPA, muitas vezes é necessário adiar o envio de dados para a AppsFlyer até que os utilizadores consintam em partilhar as suas informações.

Android nativo iOS nativo Unity React Native

Começar o SDK no Android nativo

SELECIONAR EM QUE CLASSE COMEÇAR O SDK

Decida se pretende começar o SDK na classe Application global ou na classe Activity:

  • Comece o SDK na classe global : Geralmente, iniciar o SDK na classe/subclasse Application global é uma prática recomendada, pois a classe Application é carregada e inicializada antes que qualquer interface gráfica da aplicação seja exibida. Isso assegura que o SDK possa ser iniciado em qualquer situação, incluindo ao utilizar deep linking.
  • Inicie o SDK numa classe (início adiado) para permitir que os utilizadores optem por partilhar dados. Isso é necessário porque obter o consentimento do utilizador requer uma interface de utilizador apresentada numa classe Activity.

INSTRUÇÕES PARA DESENVOLVEDORES ANDROID

  • Comunique ao desenvolvedor a sua decisão sobre o seguinte:
    • Em que classe - Application ou Activity - iniciar o SDK?
    • Qual cenário de aceitação/recusa utilizar?

Iniciar o SDK no Unity

Envie ao seu desenvolvedor este artigo do Dev Hub sobre como iniciar o SDK.

Iniciar o SDK em React Native

Envie ao seu desenvolvedor este artigo do Dev Hub sobre como iniciar o SDK.

Selecione a sua estratégia para preservar a privacidade

Escolha como garantir a privacidade do utilizador. Por exemplo, decida entre parar o SDK na instalação, impedir a partilha de dados com terceiros, anonimizar dados do utilizador ou desativar identificadores específicos.

Para obter mais informações sobre os diferentes métodos de preservação da privacidade disponíveis, consulte Métodos de preservação da privacidade no SDK.

Atribuição

O SDK recolhe identificadores com o objetivo de garantir a atribuição. Para assegurar que as instalações são registadas e atribuídas corretamente, reveja e siga as orientações dadas.

Todas as plataformas

Identificador único para as instalações

Um ID AppsFlyer é criado automaticamente para cada nova instalação da aplicação. Nenhuma ação é necessária por parte do profissional de marketing.

Pode usar este identificador para realizar as seguintes ações:

Integrar identificadores únicos do seu sistema BI com a AppsFlyer

Defina o seu próprio ID de utilizador (CUID) no SDK da AppsFlyer para cruzar o ID único do seu sistema BI com o ID da AppsFlyer e outros identificadores. O CUID está disponível nos relatórios de dados brutos da AppsFlyer. Também pode ser utilizado nas APIs de postback para cruzar referências com os seus IDs internos.

Para saber mais sobre o CUID, consulte este artigo.

Apenas para Android

As secções seguintes descrevem as considerações de atribuição para a Google Play Store ou lojas de apps de terceiros.

Atribuir apps publicadas no Google Play

REFERENTE DE INSTALAÇÃO DO GOOGLE PLAY

A API Google Play Install Referrer melhora a precisão da atribuição, oferece proteção contra fraudes de instalação e permite a recuperação segura de dados de referência do Google Play (como, por exemplo, a versão da app no momento em que foi instalada pela primeira vez).

Recomendamos que forneça ao seu programador instruções para adicionar a API do Google Play Install Referrer.

GAID

A partir do SDK V4.8.0, a AppsFlyer recolhe automaticamente este identificador de dispositivo.

Atribuir apps em lojas de terceiros

Com a AppsFlyer, pode atribuir instalações de lojas de apps de terceiros, como Amazon, Opera, GetJar, Baidu e Huawei. Isto permite-lhe promover as suas apps e alcançar públicos maiores em mercados onde a Google Play Store não está disponível.

A AppsFlyer suporta a atribuição no contexto de lojas de apps de terceiros da seguinte forma:

  • IMEI ou ID Android: O SDK não recolhe automaticamente o IMEI ou o ID do Android. No entanto, se houver necessidade de recolher estes identificadores (por exemplo, para aplicações no mercado chinês), o seu programador pode implementar um dos seguintes métodos de recolha:
    • Recolha manual: A aplicação transmite o IMEI ou o ID do Android para o SDK utilizando a API setImeiData ou setAndroidIdData (consulte a referência das funções nas abas abaixo). O SDK envia os dados para os servidores da AppsFlyer.
      Android nativoUnity

      Consulte a referência do SDK Android para:

      •  
      •   
  • OAID: Atributos de instalações a partir de lojas de aplicações Android de terceiros. Para mais informações, veja o guia de implementação de OAID.
  • Referenciadores de instalação: O SDK suporta a recuperação de dados de referência da Samsung Gallery e da Huawei AppGallery.

exclusivo iOS

As secções seguintes incluem informações importantes sobre o suporte para dispositivos com iOS 14+.

Configurar suporte para Transparência de Rastreio de Aplicações (ATT)

ANTECEDENTES

A partir do iOS 14.5, a recolha de IDFA necessita do consentimento do utilizador. Na prática, isto significa que o acesso ao IDFA é regulado pela estrutura App Tracking Transparency (ATT). Nos dispositivos com iOS 14+, o SDK utiliza a estrutura ATT para obter acesso ao IDFA do dispositivo. Para uma introdução à ATT, veja Princípios da ATT.

Quando a atribuição ocorre utilizando o IDFA, é crucial que o IDFA seja enviado logo no primeiro lançamento. waitForATTUserAuthorizationPor essa razão, o SDK fornece o método waitForATTUserAuthorization.

Visão geral da função waitForATTUserAuthorization

Importante!

Não chame waitForATTUserAuthorization se não pretende invocar o alerta ATT.

waitForATTUserAuthorization permite-lhe configurar quanto tempo o SDK deve adiar e esperar pelo estado ATT antes de enviar dados para os servidores da AppsFlyer.

Quando um utilizador inicia a aplicação, o estado ATT é notDetermined. Durante o tempo de espera, o SDK coloca na fila o evento de lançamento e os eventos consecutivos na aplicação em memória, tal como acontece quando os eventos offline são registados:

  • Se o utilizador consentir com o aviso da ATT (recolha de IDFA):
    • O SDK adiciona o IDFA aos eventos em cache.
    • O SDK então inicia e envia os eventos em cache com IDFA (sem esperar pelo final do tempo de espera).
  • Se o utilizador recusar o aviso da ATT: O SDK inicia e envia eventos em cache sem IDFA (sem esperar pelo final do tempo de espera).
  • Se o tempo de espera terminar e o estado ATT continuar como notDetermined: O SDK inicia e envia eventos em cache sem IDFA.

Considerações

  • Se o utilizador encerrar a aplicação, e ela for terminada durante o tempo de espera:
    • O temporizador é reiniciado na próxima abertura da aplicação.
    • Os eventos em cache são perdidos.

Personalizar o diálogo de consentimento da ATT

Pode personalizar o aviso ATT. Uma mensagem que esclareça claramente o propósito do pedido pode ajudar a aumentar as taxas de adesão dos utilizadores.

Considere o seguinte ao criar a sua mensagem:

Assim que concluir a mensagem, forneça ao seu programador o texto e as instruções para implementação.

Suporte para atribuição SKAN

 

Notas

Para dar total suporte à atribuição SKAN, atualize para o iOS SDK V6.2.3+.

O SKAN é uma classe utilizada pelo iOS para validar instalações de apps promovidas por anunciantes. O processo de validação da instalação de apps envolve a app de origem e a app anunciada.

Uma app de origem é aquela que participa em campanhas publicitárias exibindo anúncios de uma rede de publicidade. A configuração para exibição de anúncios na sua app não faz parte do escopo do SDK da AppsFlyer. Para configurar, siga as instruções da Apple.

Na app anunciada (aquela com o SDK da AppsFlyer), a solução SKAN da AppsFlyer utiliza o SKAN para fornecer o postback de atribuição, enquanto a AppsFlyer recolhe, traduz e agrega os dados, assegurando a privacidade do utilizador. Quando a app é iniciada pela primeira vez, a plataforma AppsFlyer utiliza a configuração estabelecida pelo profissional de marketing para instruir o SDK sobre como definir o valor de conversão SKAN.

Para utilizar a solução SKAN:

  • O profissional de marketing deve configurar a medição SKAN na AppsFlyer. O programador não precisa de realizar nenhuma tarefa.
  • O SDK da AppsFlyer chama automaticamente as APIs SKAN necessárias.
  • Certifique-se de desativar as chamadas SKAN em outros SDKs caso dependa da AppsFlyer para atribuição SKAN.
  • Não há qualquer outra ação ou processo de registo necessário pelo programador ou pelo marketer na App Store.

Para desativar a atribuição SKAN, instrua o seu programador a desativá-la no SDK.

iOS nativoUnityReact Native

Para desativar a atribuição SKAN, use

Registo de eventos na app

Os eventos dentro da app (IAE) fornecem informações sobre o que acontece na sua aplicação. A gravação de eventos na app ajuda a medir KPIs como o Retorno do Investimento (ROI) e o Valor ao Longo da Vida (LTV). Recomendamos que dedique tempo a definir os eventos que deseja registar.

Depois de decidir quais os eventos na aplicação que deseja medir, envie os nomes desses eventos e os seus parâmetros ao programador, incluindo um link para as instruções de implementação.

Para mais informações sobre eventos na aplicação, consulte o nosso guia detalhado sobre eventos na aplicação.

Todas as plataformas

Registar receita

Pode incluir receita em qualquer evento na aplicação. Assegure-se de utilizar o parâmetro af_revenue para incluir a receita. É o único parâmetro de evento que a AppsFlyer considera como receita real no painel e nos relatórios de dados brutos. Saiba mais.

Android nativoiOS nativoUnity

Para instruções sobre como definir eventos de receita, veja aqui.

Validar compras dentro da aplicação

O SDK da AppsFlyer oferece verificação de servidor para compras dentro da aplicação. A validação de uma compra na aplicação envia automaticamente um evento de compra na aplicação para a AppsFlyer. Enviar este evento manualmente cria duplicações nos relatórios de eventos.

Setores da indústria

Consulte a nossa lista de eventos na aplicação recomendados por setor, como viagens, jogos ou eCommerce.

Ligações profundas com OneLink

O OneLink é a solução da AppsFlyer para atribuição multiplataforma, redirecionamento e ligações profundas.

Todas as plataformas

Deteção e redirecionamento de dispositivos

Para utilizadores que não têm a sua aplicação instalada, o OneLink deteta o tipo de dispositivo e encaminha-os para o destino adequado (por exemplo, Google Play, Apple App Store, loja de aplicações de terceiros ou página web). Isto é baseado nas definições do seu modelo de OneLink. Saiba mais

Deep linking

Para os utilizadores que têm a sua aplicação instalada, o OneLink abre a aplicação. Além de abrir a aplicação, pode também redirecionar diretamente os utilizadores para uma atividade ou página específica dentro da aplicação. Para isso, é necessário que o seu programador implemente o Unified Deep Linking (UDL).

Nota:

  • O UDL requer o SDK V6.1+.
  • Os clientes que já utilizam o OneLink para deep linking podem estar a usar o método legado ao invés do UDL.

Consulte o nosso guia sobre como configurar deep linking e deep linking diferido.

Deep linking diferido

Para utilizadores que não têm a sua aplicação instalada, o OneLink deteta o tipo de dispositivo e encaminha-os para o destino adequado: Google Play, Apple App Store, loja de aplicações de terceiros ou página web. Assim que o utilizador iniciar a aplicação, pode utilizar deep linking diferido para redirecioná-lo para uma atividade ou página específica dentro da aplicação.

Para isto, é necessário que o seu programador implemente deep linking diferido alargado.

Nota:

  • O UDL requer o SDK V6.1+.
  • Os clientes que já utilizam o OneLink para deep linking diferido podem estar a usar o método legado, ao invés do UDL.

Consulte o nosso guia sobre como configurar deep linking e deep linking diferido.

Aceder a dados de atribuição e deep linking

A tabela seguinte descreve os métodos disponíveis para obter dados de atribuição e deep linking:

Método Quem está envolvido? Retornar resultados Método de obtenção Dados de atribuição Dados de deep linking Disponibilidade
API Push • Profissional de marketing • Programador de back-end Normalmente em minutos Back-end S N Premium
API Pull • Profissional de marketing • Programador de back-end • Periódico (não em tempo real). • Pode agendar downloads de relatórios de dados brutos. Back-end S S Premium para relatórios de dados brutos
Armazenamento de dados • Profissional de marketing • Programador de back-end Os relatórios horários estão disponíveis entre 1 a 3 horas Armazenamento na nuvem disponível através das seguintes opções: • Bucket da AppsFlyer na AWS • Armazenamento próprio (AWS ou GCS) S S Premium
Obtenção de dados de conversão (GCD) • Profissional de marketing • Programador de aplicações móveis Consulte a documentação do programador Até 5 segundos SDK S S Todas as contas
Ligação direta unificada (UDL) • Profissional de marketing • Programador de aplicações móveis Consulte a documentação do programador Até 1 segundo SDK N S Todas as contas

Atenção aos seguintes pontos para utilizadores de iOS 14.5+ sem consentimento:

  • Ao utilizar UDL para mídia paga e própria, os dados de ligações diretas estão disponíveis.
  • Utilizando o GCD para mídia paga, os dados são limitados e não incluem detalhes de atribuição e ligações diretas.

Sugestão

Recomendamos o seguinte:

  • Utilize a API Push para obter os dados de atribuição e enviá-los para os seus servidores para processamento adicional. Este método aguarda a disponibilidade dos dados, sendo assim altamente preciso e praticamente em tempo real. O GCD fornece dados em tempo real, mas pode apresentar imprecisões quando as decisões finais de atribuição são efetuadas após mais de cinco segundos.
  • Utilize a API Pull para complementar periodicamente (por exemplo, diariamente) os dados de atribuição em tempo real e para compensar quaisquer erros de comunicação que possam surgir.

Testar a integração do SDK

Quando a integração do SDK estiver concluída, pode acessar o painel de controlo da AppsFlyer e utilizar a página de Testes de Integração do SDK para testar instalações orgânicas e não orgânicas, eventos dentro da aplicação e ligações diretas (retargeting). Isto assegura que as instalações e eventos dentro da aplicação são registados e atribuídos de forma correta.

Para cenários e instruções de teste, consulte Teste de integração do SDK.

Observação: Ao realizar testes de atribuição, registre um dispositivo de teste (Android ou iOS) para garantir que cada instalação é contada como uma nova. Um dispositivo de teste registado impede que as instalações sejam contadas como reinstalações.