Introdução: SKAdNetwork e SKAN
O SDK para iOS da Singular simplifica a integração com a SKAdNetwork, suportando os recursos do SKAN 4.0, como postbacks múltiplos, IDs de origem hierárquicos e valores de conversão de granularidade grossa. Baseado no padrão SKAN de código aberto da Singular, ele garante fácil configuração e compatibilidade com redes de anúncios. Para obter detalhes de configuração, consulte o Guia SKAdNetwork da Singular.
Suporte ao rastreamento de SKAdNetwork
Dica: o rastreamento de SKAdNetwork é ativado por padrão ao usar o SDK do Singular.
Para desativar ou desligar o suporte para SKAdNetwork:
- Defina o método de configuração skAdNetworkEnabled como FALSE ao criar o objeto SingularConfig.
Manipulação de AppTrackingTransparency (ATT)
Para iOS 14.5+ (incluindo iOS 18), utilize ATTrackingManager para solicitar o consentimento do utilizador antes de aceder ao IDFA para rastreio. O SDK do iOS da Singular (v12.x) dá suporte ao ATT, permitindo a inicialização antes do consentimento e atrasando os eventos até que o consentimento seja concedido ou ocorra um tempo limite. Isso garante a conformidade com as regras de privacidade da Apple e a compatibilidade com a SKAdNetwork (SKAN) 4.0.
Implementação
-
Adicionar a estrutura ATT:
- Inclua AppTrackingTransparency no seu projeto Xcode.
- Actualize Info.plist com NSUserTrackingUsageDescription (por exemplo, "Esta aplicação utiliza o rastreio para personalizar anúncios.").
-
Solicitar o consentimento da ATT:
- Solicite o consentimento quando o aplicativo for iniciado ou após o onboarding, com base na sua estratégia de UX.
- Use o SDK da Singular para lidar com a inicialização pré-consentimento.
-
Configurar o SDK da Singular:
- Defina o método de configuração waitForTrackingAuthorizationWithTimeoutInterval ao criar o objeto SingularConfig para atrasar eventos até que o consentimento ATT seja resolvido ou o tempo limite (por exemplo, 30 segundos) expire.
Melhores práticas
- Tempo do prompt: Solicite o consentimento da ATT no lançamento da aplicação para maximizar a disponibilidade do IDFA ou adie até depois do onboarding para melhorar o contexto do utilizador. Teste ambos para equilibrar as taxas de consentimento e a experiência do utilizador.
- Tempo limite: Defina waitForTrackingAuthorizationWithTimeoutInterval para 30-300 segundos. Após o tempo limite, o Singular prossegue com a atribuição do SKAN 4.0 (sem IDFA).
- Integração do SKAN 4.0: Certifique-se de que as atualizações do valor de conversão estejam alinhadas com o consentimento ATT para otimizar os postbacks do SKAN (por exemplo, use o painel do Singular para mapear eventos para os valores 0-63).
- Tratamento de erros: Verificar ATTrackingManager.trackingAuthorizationStatus para restricted (por exemplo, controlos parentais) ou notDetermined estados e registo para análise.
Tratamento de valores de conversão manual
Modo gerenciado
Por padrão, a implementação da SKAdNetwork gerencia o valor de conversão diretamente do lado do servidor Singular.
Isto permite a máxima flexibilidade, uma vez que é possível definir e alterar os valores de conversão através da plataforma Singular, sem modificar o código do lado do cliente.
Este modo de gestão do lado do servidor também o ajuda a lidar com os temporizadores da SKAdNetwork. A SKAdNetwork permite-lhe atualizar o valor de conversão no prazo de 24 horas a partir do momento do registo na SKAdNetwork. Qualquer chamada para atualizar o valor de conversão prolonga o temporizador por mais 24 horas. Por conseguinte, ao escolher os seus eventos de conversão, terá de se certificar de que os eventos ocorrem dentro dessa janela de atualização. No modo gerido, pode alterar a configuração do evento de conversão em qualquer altura, sem lançar uma nova versão da sua aplicação.
Modo manual
Se pretender atualizar o valor de conversão por si próprio:
- Defina o método de configuração withManualSkanConversionManagement método de configuração ao construir o objeto SingularConfig.
- Então, para atualizar o valor de conversão, use o método skanUpdateConversionValue sempre que necessário no ciclo de vida da sua aplicação.
- Ou, para atualizar manualmente os valores de conversão da SKAdNetwork 4.0, utilize o método skanUpdateConversionValues sempre que necessário no ciclo de vida da sua aplicação.
Nota: O método skanUpdateConversionValue não funcionará se não tiver definido o SDK para actualizações manuais na inicialização.
Recuperando o valor de conversão
Para obter o valor de conversão atual, use o método skanGetConversionValue método. Este método funciona tanto no modo gerido como no modo manual.