Rastrear eventos em um WebView com o Google Analytics

1. Introdução

Última atualização:22/12/2021

O que você vai criar

Neste codelab, você vai aprender a encaminhar eventos de uma página da Web na WebView para um código nativo para que o GAPF possa rastreá-los.

Vamos usar o exemplo de app Android híbrido, que chama uma página da Web usando a WebView.

O que você vai aprender

  • Como inicializar o GAPF (Google Analytics para Firebase) em um app híbrido
  • Como criar eventos e parâmetros personalizados em uma página da Web
  • Como encaminhar os eventos de uma página da Web na WebView para um código nativo.
  • Como depurar
  • Como importar eventos e usá-los em campanhas de ação.

O que é necessário

  • Android Studio 3.6 ou versão mais recente.
  • Conta do Firebase.

2. Etapas da configuração

Buscar o código

Os documentos do guia do Firebase fornecem o exemplo de código necessário para este projeto em um GitHub.

7074c0e83b5fd4b1.png

Para começar, abra o código no seu ambiente de desenvolvimento favorito. Usaremos dois diretórios : android, web. O nome "android" é para apps Android e "Web" é para uma página da Web que será chamada pelo app com a WebView.

3. Criar e configurar um projeto do Firebase

Para começar a usar o Firebase, será necessário criar e configurar um projeto do Firebase.

Criar um projeto do Firebase

  1. Faça login no Firebase.

No Console do Firebase, clique em Adicionar projeto (ou Criar um projeto) e nomeie seu projeto do Firebase como Webview-test-codelab ou qualquer outro nome.

fd93054e27d6b386.png

  1. Clique nas opções de criação do projeto. Se solicitado, aceite os termos do Firebase. Você precisa ativar o Google Analytics para esse projeto, porque são necessários eventos dele para rastrear os eventos de ação e analisar as conversões.

e58151a081f0628.png

Para saber mais sobre os projetos do Firebase, consulte Entender os projetos do Firebase.

4. Configuração do Firebase para Android

3e5b8f1b6ca538c4.png

Configurar para Android

  1. No Console do Firebase, selecione Visão geral do projeto na navegação à esquerda e clique no botão Android em "Comece adicionando o Firebase ao seu aplicativo"

A caixa de diálogo será exibida na tela a seguir.

3b7d3b33d81fe8ea.png

  1. O valor importante a ser fornecido é o nome do pacote Android, que você buscará usando a próxima etapa.
  1. No diretório do app, abra o arquivo android/app/src/main/AndroidManifest.xml.
  2. No elemento manifest, encontre o valor da string do atributo package. Esse valor é o nome do pacote do Android, algo como com.yourcompany.yourproject. Copie esse valor.
  3. Na caixa de diálogo do Firebase, cole o nome do pacote no campo Android package name.
  4. Não é necessário ter a chave SHA-1 aqui, a menos que você pretenda usar o Login do Google ou os Firebase Dynamic Links, que não fazem parte deste codelab. Se você planeja importar dados do in_app_purchase no Google Play, precisará definir a chave posteriormente.
  5. Clique em Registrar app.
  6. Ainda no Firebase, siga as instruções para fazer o download do arquivo de configuração google-services.json.

52f08aa18c8d59d0.png

  1. Acesse o diretório do app e mova o arquivo google-services.json que você acabou de transferir por download para o diretório android/app.
  2. No Console do Firebase, pule as etapas restantes e volte à página principal.
  3. Por fim, você precisa do plug-in do Google Services para Gradle para ler o arquivo google-services.json gerado pelo Firebase.
  4. No ambiente de desenvolvimento integrado ou no editor, abra o android/app/build.gradle e adicione a seguinte linha como a última do arquivo:
apply plugin: 'com.google.gms.google-services'
  1. Abra o android/build.gradle e adicione uma nova dependência dentro da tag buildscript:
buildscript { 
   repositories {
      // ...
   }
   dependencies {
      // ...
      Classpath 'com.google.gms:google-services:4.3.3'
   }
}
  1. Caso o app ainda esteja em execução, feche e recrie-o para que o Gradle instale as dependências.

Você concluiu a configuração do seu app para Android.

5. Desenvolver uma interface da Web do Analytics e registrar eventos personalizados

Para acompanhar os eventos em uma WebView com o Google Analytics, você precisa inserir o código no app Android e na Web.

Nesta parte, vamos conferir qual código você precisa colocar na Web. a0f31cdf21ea85d1.png

Primeiro, crie um arquivo JavaScript para usar em um arquivo HTML. No exemplo de código, o arquivo js nomeado como index.js. Você precisa criar a função "logEvent" para chamar AnayticsWebInterface para Android e messageHander para iOS, como o código abaixo.

6d9fac050fb64f4e.png

E chame essa função onde você deseja acompanhar o evento, como mostrado abaixo.

f40c1596678173ba.png

Quando o evento é acionado no WebView no Android, "window.AnalyticsWebInterface" será chamado e conectará o evento ao aplicativo nativo.

6. Hospede o diretório da Web para receber o URL da página da Web

Para chamar uma página da Web com a WebView no app, você precisa de um URL de página da Web. Haverá vários métodos para hospedar páginas da Web, mas, neste codelab, vamos orientar você a usar o serviço Firebase Hosting apenas por conveniência.

  • No seu terminal, insira o diretório da Web (por exemplo, cd web) e execute os seguintes comandos:
  • npm install -g firebase-tools: instala a CLI do Firebase.
  • firebase login
  • firebase init
  • Escolha "Hospedagem" quando perguntado qual recurso você quer configurar.
  • Escolha o projeto configurado para o app Android.
  • Aceite os padrões de todos os comandos restantes.
  • firebase deploy --only hosting: implantar no Firebase Hosting.

e7d56dd78a4448e7.png

7. Desenvolver código de interface em apps Android

Para acompanhar os eventos em uma WebView com o Google Analytics, você precisa inserir o código na Web e no Android. Nesta parte, vamos conferir qual código você precisa colocar no app Android.

Crie "AnalyticsWebInterface.java" para tornar "AnalyticsWebInterface" . Nessa classe, é necessário codificar @JavascriptInterface para conectar a função logEvent no arquivo js da Web, como mostrado abaixo.

6f069f438e4667ba.png

Em seguida, você precisa adicionar a interface JavaScript à atividade, que chama o WebView como mostrado abaixo.

f2c6e5affd8c8993.png

Para acessar o código completo, consulte o exemplo de código que você baixou na seção "Como configurar" etapa.

8. Como verificar e depurar eventos

Para depurar eventos, você pode usar o código a seguir no terminal do Android Studio depois de conectar o dispositivo de teste ou iniciar o emulador.

> adb shell setprop debug.firebase.analytics.app [nome do pacote do aplicativo]

> adb shell setprop log.tag.FA VERBOSE

> adb shell setprop log.tag.FA-SVC VERBOSE

> adb logcat -v time -s FA FA-SVC

Se o código funcionar bem, você verá o registro como abaixo.

33c64f811e7e9a0f.png

Se você quiser verificar no Console do Firebase, também é possível usar a guia "Tempo real". Acesse o Console do Firebase e clique na guia "Tempo real", como mostrado abaixo.

Depois, filtre o evento da Plataforma Android usando "Adicionar comparação". função.

af6e8da348dbe775.png aa804eb02f0b7d3f.png

Se o código tiver sido implementado corretamente, você verá os eventos do app Android na guia "Tempo real".

bde531c7a37c0851.png

Após várias horas, os eventos registrados vão aparecer na guia "Eventos" do Console do Firebase. Basta clicar na guia Eventos da seção "Google Analytics" do Console do Firebase. Também é possível conferir os valores no evento event1 clicando nele.

Para marcar event1 como uma conversão, deslize a chave Marcar como conversão para a direita.

486010186b929deb.png

Se o evento estiver na guia "Conversão", ele foi marcado como uma conversão. O Google Ads agora poderá importar esse evento do Firebase.

b72cf934a76e174b.png

Para fins de depuração, use o Firebase DebugView. Para ver mais informações, consulte Depurar eventos.

9. Como importar eventos do Analytics no Google Ads

Depois de concluir a configuração do Firebase Flutter, estará tudo pronto para você lançar as campanhas para apps com eventos de ação. Comece vinculando o Firebase ao Google Ads. Quando você vincula o Firebase ao Google Ads,as campanhas para apps podem importar eventos do Firebase. Esse processo também ajuda o Google Ads a otimizar as campanhas para apps, permitindo que ele saiba mais sobre os públicos-alvo.

  1. Clique no botão ao lado de Visão geral do projeto para acessar as Configurações do Firebase.
  2. Na guia Integrações, você vai encontrar o Google Ads e um botão Vincular. Clique em Vincular e em Continuar.

b711bf2e94fa0895.png

  1. Selecione a conta do Google Ads.

A parte relacionada ao Firebase já foi concluída.

Acesse o Google Ads.

  1. Faça login e acesse Ferramentas e Configurações > Medição > Conversões para importar eventos personalizados como conversões.
  2. Clique no botão + para adicionar novas ações de conversão.

73cec8d2e80eab03.png

  1. Escolha Propriedades do Google Analytics 4 (Firebase) e clique em Continuar.

4b1d8f6a712b2ac6.png

  1. Você verá todos os eventos do Analytics que foram marcados como conversões. Encontre o evento event1 que implementamos antes.

e2bd5e1f7b9b73d9.png

  1. Marque a ação, clique em Importar e em Continuar.

ab35e341dff32e48.png

Depois de definir o event1 como uma ação de conversão, você pode iniciar campanhas de ação voltadas para usuários que provavelmente vão disparar eventos do event1 mais de cinco vezes.

10. Como lançar campanhas de ação para apps com eventos importados

  1. Vá para a guia "Campanha" da conta atual e inicie uma nova campanha clicando no botão +. Clique em [Nova campanha] e em Continuar.
  2. Lance uma campanha de promoção de app com a opção Instalações de apps.

af98c44d1476558.png

  1. Encontre seu app digitando o nome dele, do pacote ou do editor.
  2. Na seção Lances, selecione Ações no app no menu suspenso.
  3. Encontre seu evento personalizado na lista fornecida. Defina o Custo por ação desejado e preencha as opções adicionais.

ee2bf8eb80cddd7c.png

  1. Conclua as especificações da campanha.

11. Parabéns

Parabéns! Você integrou o Firebase e o Google Ads. Assim, você poderá melhorar o desempenho da sua campanha com eventos importados do Firebase.

Você aprendeu

  • Como inicializar o GAPF (Google Analytics para Firebase) em um app híbrido
  • Como criar eventos e parâmetros personalizados em uma página da Web
  • Como encaminhar os eventos de uma página da Web na WebView para um código nativo.
  • Como depurar
  • Como importar eventos e usá-los em campanhas de ação.