API SDK Runtime: guia de integração

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Ao ler a documentação do Sandbox de privacidade do Android, use o botão Prévia para desenvolvedores ou Beta para selecionar a versão do programa com que você está trabalhando, porque as instruções podem variar.


Para ajudar no planejamento, este guia fornece uma visão abrangente do processo de integração, que pode incluir recursos ainda não implementados no estágio atual do Sandbox de privacidade na prévia para desenvolvedores Android. Nesses casos, são fornecidas orientações sobre o cronograma.

O gráfico abaixo mostra o fluxo de trabalho de desenvolvimento atualizado para a integração do SDK Runtime. Você pode desenvolver simultaneamente as seções listadas na mesma coluna. Por exemplo, o engajamento do parceiro pode ser feito simultaneamente com a configuração do ambiente de teste.

Diagrama visual do fluxo de trabalho de integração do SDK Runtime.
Figura 1: fluxo de trabalho para a integração do SDK Runtime.

Pré-requisitos e configuração

O preenchimento desta seção de pré-trabalho garante que você tenha uma boa compreensão do SDK Runtime, e vai preparar os resultados significativos ao usar a API no ecossistema de adtechs.

Conhecer a API

Comece lendo a Proposta de design para se familiarizar com o SDK Runtime, os recursos e as restrições.

Leia o guia para desenvolvedores para saber como incorporar o código e as chamadas de API que você vai precisar para seus casos de uso.

Envie feedback sobre a documentação, principalmente sobre as perguntas em aberto.

Inscreva-se para receber atualizações sobre o Sandbox de privacidade do Android e ficar por dentro dos novos recursos introduzidos em versões mais recentes.

Configurar e testar o app de exemplo

Quando estiver tudo pronto para iniciar a integração, faça o download da prévia para desenvolvedores mais recente no Android Studio seguindo as instruções listadas neste link. Este guia exige o uso da versão canário mais recente do Android Studio. É possível executar essa versão do Android Studio em paralelo com outras versões que você usa. Portanto, informe se esse requisito não funcionar para você.

Copie e execute o código no nosso app de exemplo para se familiarizar com a instalação do SDK RE chamado "example-sdk" e do app cliente chamado "client-app" em um dispositivo ou emulador, garantindo que um exemplo de anúncio seja carregado (links em inglês).

Adaptar o SDK existente ao SDK Runtime

O objetivo desta seção é implementar funcionalidades, como mostrar um anúncio de banner, de um SDK existente em um SDK ativado pelo ambiente de execução (SDK RE) e configurar a comunicação entre o app e o SDK RE.

  • Crie ou atualize o sdk-example e o sdk-implementation para implementar a funcionalidade no SDK RE.

  • Em termos de arquitetura, adicione o SDK RE como uma dependência ao SDK existente, que atua como um wrapper. Isso permite que o app cliente continue a chamar diretamente o SDK ou o wrapper atual. O SDK do wrapper pode encaminhar chamadas de API com base em diferentes estratégias descritas abaixo.

Diagrama visual da arquitetura do sistema após a integração do SDK Runtime.
Figura 2: arquitetura do sistema após a integração do SDK Runtime.

Para casos de uso que exigem dados personalizados, como chamada para as PPAPIs, uma definição de API precisa ser criada usando IPC. Usando o IBinder do Android e a AIDL, crie um protocolo de comunicação para enviar informações ao SDK ativado pelo ambiente de execução para quaisquer informações ou ações necessárias. Mais informações no guia do desenvolvedor do SDK Runtime neste link.

Encaminhar o tráfego para o SDK ativado pelo ambiente de execução

Estratégias de roteamento para chamadas de API

Dependendo dos casos de uso, é recomendado rotear chamadas do SDK usando o SDK existente e os caminhos de código do SDK RE. Isso vai ajudar você a implementar o teste A/B no lançamento inicial. Para facilitar a integração do app, este guia considera que ele vai depender do SDK RE e delegar ao SDK atual quando adequado. Considere estas estratégias:

Encaminhar uma porcentagem de chamadas do SDK para o SDK RE

Encaminhe somente uma porcentagem das chamadas do SDK para o SDK RE. Encaminhe o restante para o caminho de código do SDK atual. Por exemplo, considere essa estratégia quando você precisar atender à solicitação do SDK uma única vez, como ao mostrar um anúncio de banner.

  • Modifique seu SDK atual para encaminhar uma porcentagem de solicitações ao SDK RE. Por exemplo, use uma sinalização de configuração dinâmica baseada no servidor, como a Configuração remota do Firebase, para controlar dinamicamente os critérios de desvio.
  • Isso basicamente torna o SDK existente a única interface com que o app interage e é responsável por encaminhar solicitações do SDK para o novo SDK RE.
  • Seu código precisa redirecionar apenas solicitações que possam ser processadas pelo SDK RE. Por exemplo, verifique se o SDK Runtime oferece suporte ao formato do anúncio.
  • Siga estas instruções para atualizar o código do SDK para interagir com o SDK RE.

Pseudocódigo para lógica de roteamento:

void showAd(AdRequest request) {
  if (request.isBannerAd() && enableRuntimeSdkDiversion() == true) {
    // Call showAd() from the RE SDK
  } else {
    // Call showAd() using the existing SDK code path
  }
}

Encaminhar todas as chamadas do SDK para os SDKs atuais e RE

Encaminhe todas as chamadas do SDK para o caminho do código do SDK existente e o caminho do código do SDK RE nos dispositivos com suporte. Considere essa estratégia para os casos em que você precisa usar os caminhos de código novos e atuais para fins de comparação. Por exemplo, compare os resultados dos relatórios de conversão.

  • Modifique seu código para encaminhar todas as chamadas do SDK para o caminho do código do SDK existente e para o caminho do código do SDK RE. Verifique se a funcionalidade tem suporte no SDK Runtime e se o SDK RE está carregado.

Pseudocódigo para lógica de roteamento:

void reportAttribution(AdRequest request) {
  if (request.isFeatureSupported() && isSdkLoaded() == true) {
    // Call RE SDK
  }

  // Call existing SDK code path
}

Beta fechado para distribuição do SDK ativado pelo ambiente de execução

O Google Play oferece um programa Beta fechado para SDKs relacionados a anúncios para desenvolvedores que se inscreveram no programa Beta e realizaram testes locais. Se você tem interesse em participar, inscreva-se neste link.