Pular para o conteúdo principal

Requisitos

  • minSdkVersion: 21 (Android 5.0)
  • targetSdkVersion: 34 (Android 14)
  • Kotlin version: 1.8.22 ou superior
  • Java compatibilidade: Java 8

Instalação

Para instalar a Nemu SDK em sua aplicação construída com Kotlin é obrigatório adicionar a dependência do SDK em seu arquivo build.gradle.kts (ou .gradle), além disso adicionar as dependências para recuperar a origem em instalações de seu aplicativo no Google Play
Após a instalação inicialize o nosso SDK no onCreate global da sua aplicação fornecendo o id do pixel da Nemu e a sua chave SDK Nemu como argumento
Obs: Por medidas de segurança recomendamos que sua chave SDK Nemu esteja armazenada como variável de ambiente
Como sugestão você pode usar um plugin Gradle (como dotenv-gradle) para carregar um .env com conteúdo como:
E usar no build.gradle.kts:
Exemplo de inicialização da SDK no arquivo de entrada de uma aplicação mobile
Após esses passos a instalação da nossa SDK já estará completa em sua aplicação Kotlin

Registrar UID a sessão do SDK

Para total segurança e integridade dos dados de usuários de sua aplicação, todos os UID registrados pelo nosso SDK são criptografados antes de serem armazenados em nossos servidores
Durante o processo de login da aplicação adicione uma chamada ao método setUserId() passando como argumento o UID definido do usuário que acabou de realizar o processo de login, veja esse exemplo:
Um ponto importante é que devemos garantir que os usuários já logados antes da instalação da SDK também sejam traqueados após a atualização, para isso você pode inserir o UID no momento em que ele se torna disponível em sua aplicação, como por exemplo no onCreate() da Application ou logo após carregar o usuário salvo (ex: Após sessionManager.loadUser())

Recuperar UTMs ao enviar disparo de venda para a API da Nemu

O método getLastSessionHistory() retorna um objeto contendo as UTMs da última sessão do usuário, utilize esse objeto ao enviar as informações da venda a API da Nemu, veja o exemplo abaixo:

Testando o SDK e garantindo de que está tudo certo

Para testar o fluxo completo e garantir de que a sua integração está funcionando corretamente você pode executar os simples passos abaixos:

1. Inicialize o SDK em modo de DEBUG

Para conseguir visualizar logs gerados pela própria SDK você pode ativá-lo passando o argumento opcional isDebugMode como true ao método de inicialização da SDK no lugar onde ele está sendo chamado
Se a sua aplicação ainda não estiver configurada para receber deep links acesse aqui para aprender como configurá-los Em sua ferramenta de emulação acesse um link que redirecione para o seu aplicativo com um conjunto de UTMs, exemplo:
https://myapp.com?utm_source=nemu&utm_medium=medium-test&utm_campaign=campaign-test&utm_content=content-test

3. Acesse a sua aplicação e verifique se o SDK foi inicializado corretamente através dos logs

Após o aplicativo ser executado verifique os logs da sua aplicação, se tudo estiver configurado certo veremos os 3 logs abaixo

Uma rápida explicação sobre cada log:

  1. Conexão com a Nemu: Mostra que o SDK da Nemu conseguiu se conectar corretamente com os servidores da Nemu, através de pixel id e SDK token válidos
  2. Extração das UTMs: Exibe que o SDK conseguiu receber e armazenar corretamente as UTMs definidas no DeepLink
  3. UID registado: Informa que o SDK conseguiu atribuir o UID repassado ao acesso atual

4. Verifique se as UTMs estão sendo recuperadas corretamente ao chamar o método getLastSessionHistory()

Como último passo verifique se ao chamar o método getLastSessionHistory() as UTMs são recuperadas corretamente, com o modo de debug ativado você irá poder visualizar o objeto retornado nos logs mas pode adicionar de forma complementar logs no trecho onde o método está sendo executado para validações:
No modo de debug ao chamar esse método o seguinte log irá ser retornado:
Nota: Note que no fim do utm_content é inserido automaticamente a string ”||nemu_xiI85afzrP”, essa string representa o identificador de sessão interno da Nemu e deve ser enviado como parte do utm_content ao envio de vendas para a Nemu API