Implemente o Universal Analytics (UA) com o Gerenciador de tags do Google (GTM) para permitir alterações do tempo de execução na implementação do Google Analytics que não exigem a recriação e o reenvio do binário do aplicativo aos mercados.
Veja neste guia como usar as tags do Universal Analytics e o SDK do Gerenciador de tags do Google para iOS para:
- enviar exibições de tela;
- enviar eventos;
- enviar Transações de comércio eletrônico;
- enviar dados de comércio eletrônico avançado.
Enviar exibições de tela
Para enviar ao Google Analytics uma exibição de tela sempre que uma nova tela for aberta no seu aplicativo, faça o seguinte:
- Crie uma variável de nome de tela.
- Crie um acionador de evento de abertura de tela.
- Crie uma tag de exibição de tela do Universal Analytics.
- Transmita o evento de abertura de tela e o nome da tela para a camada de dados.
1. Crie uma variável de nome de tela
Para criar uma variável de nome de tela no GTM, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Variáveis.
- Em Variáveis definidas pelo usuário, clique em Nova.
- Clique em Variável sem título para inserir nome da tela como o nome da variável.
- Selecione Variável da camada de dados como o tipo.
- Insira screenName como o Nome da variável da camada de dados e defina Tela desconhecida como o valor padrão.
- Clique em Criar variável.
2. Crie um acionador de evento de abertura de tela
Para criar um acionador no GTM e disparar a tag de exibição de tela do Universal Analytics, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Acionadores.
- Clique em Novo.
- Clique em Acionador sem título para inserir OpenScreenEvent como o nome.
- Escolha Personalizado como o tipo de evento.
- Em Disparar, insira a seguinte condição:
- Clique em Criar gatilho.
3. Crie uma tag de exibição de tela do Universal Analytics
Para criar uma tag de exibição de tela do Universal Analytics disparada pelo evento de abertura de tela, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Tags.
- Clique em Nova.
- Clique em Tag sem título para inserir Abertura de tela como o nome.
- Escolha o produto Google Analytics.
- Insira o ID de acompanhamento.
- Selecione Visualização do aplicativo como o Tipo de acompanhamento.
- Clique em Mais configurações.
- Clique em Campos a serem definidos.
- Clique várias vezes em + Adicionar campo para adicionar os seguintes campos:
- Clique em Continuar.
- Em Disparar, clique em Personalizado.
- Selecione o acionador personalizado OpenScreenEvent.
- Clique em Salvar.
- Clique em Criar tag.
4. Transmita o evento de abertura de tela e o nome da tela para a camada de dados
Adicione o código ao seu app para enviar um evento openScreen
e um valor screenName
à camada de dados, por exemplo:
// ViewController.m // Push an 'openScreen' event to the data layer. // #import "ViewController.h" #import "TAGDataLayer.h" #import "TAGManager.h" @implementation ViewController - (void)viewDidAppear { [super viewDidAppear]; // NOTE: A GTM container should already have been opened, otherwise events // pushed to the DataLayer will not fire tags in that container. TAGDataLayer *dataLayer = [TAGManager instance].dataLayer; [dataLayer push:@{@"event": @"openScreen", // Event, name of Open Screen Event. @"screenName": @"Home Screen"}]; // Name of the screen name field, screen name value. } // Rest of the ViewController implementation @end
Enviar eventos
Para enviar um evento ao Google Analytics quando um usuário interage com os controles de IU ou o conteúdo no seu aplicativo:
- Crie variáveis de evento (opcional).
- Crie um acionador de evento.
- Crie uma tag de evento do Universal Analytics.
- Transmita o evento e o valor da variável dele para a camada de dados.
Veja nas etapas a seguir como um evento é enviado ao Google Analytics quando um usuário inicia uma reprodução de vídeo.
1. Crie variáveis de evento (opcional)
Se o evento usar as variáveis da camada de dados para representar os campos de categoria, ação, rótulo ou valor, primeiro crie essas variáveis. Neste exemplo, a tag de evento de reprodução de vídeo usa uma variável da camada de dados para descobrir o nome do vídeo.
Para criar uma variável de nome de vídeo no GTM, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Variáveis.
- Em Variáveis definidas pelo usuário, clique em Nova.
- Clique em Variável sem nome para inserir nome do vídeo como o nome.
- Selecione Variável da camada de dados como o tipo.
- Insira videoName como o Nome da variável da camada de dados e defina Vídeo desconhecido como o valor padrão.
- Clique em Criar variável.
2. Crie um acionador de evento
Para criar um acionador de evento no GTM e disparar a tag de evento do Universal Analytics, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Acionadores.
- Clique em Novo.
- Clique em Acionador sem título para inserir VideoPlayEvent como o nome.
- Escolha Personalizado como o tipo de evento.
- Em Disparar, insira a seguinte condição:
- Clique em Criar gatilho.
3. Crie uma tag de evento do Universal Analytics
Para criar uma tag de evento do Universal Analytics disparada pelo evento de reprodução de vídeo, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Tags.
- Clique em Nova.
- Clique em Tag sem título para inserir Evento de reprodução de vídeo como o nome.
- Escolha o produto Google Analytics.
- Insira o ID de acompanhamento.
- Selecione Evento como o Tipo de acompanhamento.
- Insira os seguintes parâmetros de acompanhamento de eventos:
- Clique em Mais configurações.
- Clique em Campos a serem definidos.
- Clique várias vezes em + Adicionar campo para adicionar os seguintes campos:
- Clique em Continuar.
- Em Disparar, clique em Personalizado.
- Selecione o acionador personalizado VideoPlayEvent.
- Clique em Salvar.
- Clique em Criar tag.
4. Transmita o evento e o valor da variável dele para a camada de dados
Crie um código para enviar um evento videoPlay
e um valor videoName
à camada de dados, por exemplo:
// VideoPlayer.m // Push a 'videoPlay' event to the data layer. // #import "TAGDataLayer.h" #import "TAGManager.h" #import "Video.h" #import "VideoPlayer.h" @implementation VideoPlayer // Called when a user initiates a video playback. - (void)onPlay:(Video *)video { TAGDataLayer *dataLayer = [TAGManager instance].dataLayer; // This call assumes the container has already been opened, otherwise events // pushed to the DataLayer will not fire tags in that container. [dataLayer push:@{@"event": @"videoPlay", // Event, name of Video Play Event. @"videoName": video.title, // Additional data layer variables used by the event tag. @"screenName": @"Home Screen"}]; [self play:video]; } // Rest of the implementation @end
Enviar Transações de comércio eletrônico
Quando um usuário conclui uma compra no aplicativo, faça o seguinte para enviar ao Google Analytics a transação e os itens associados:
- Crie um acionador de transação.
- Crie uma tag de transação do Universal Analytics.
- Transmita o evento de transação, a transação e os itens para a camada de dados.
Para ver a lista de nomes de variáveis da transação e do item compatíveis, consulte Variáveis da camada de dados de comércio eletrônico compatíveis.
1. Crie um acionador de transação
Se você quiser criar um acionador de transação no GTM para disparar a tag de transação do Universal Analytics, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Acionadores.
- Clique em Novo.
- Clique em Acionador sem título para inserir TransactionCompleted como o nome.
- Escolha Personalizado como o tipo de evento.
- Em Disparar, insira a seguinte condição:
- Clique em Criar gatilho.
2. Crie uma tag de transação do Universal Analytics
Para criar uma tag de transação do Universal Analytics disparada pelo evento de transação, faça o seguinte:
- Faça login na sua conta do Gerenciador de tags do Google.
- Selecione um contêiner para dispositivos móveis.
- Na barra de navegação à esquerda, clique em Tags.
- Clique em Nova.
- Clique em Tag sem título para inserir Transação efetuada como o nome.
- Escolha o produto Google Analytics.
- Insira o ID de acompanhamento.
- Selecione Transação como o Tipo de acompanhamento.
- Clique em Mais configurações.
- Clique em Campos a serem definidos.
- Clique várias vezes em + Adicionar campo para adicionar os seguintes campos:
- Clique em Continuar.
- Em Disparar, clique em Personalizado.
- Selecione o acionador personalizado TransactionCompleted.
- Clique em Salvar.
- Clique em Criar tag.
3. Transmita o evento de transação, a transação e os itens para a camada de dados
Escreva um código para enviar o evento de transação, a transação e os itens associados à camada de dados. Para transmitir os dados da transação e do item à camada, use os nomes de variáveis compatíveis. Exemplo:
// Called when a user completes a transaction. - (void)onPurchaseCompleted:(Purchase *)purchase { TAGDataLayer *dataLayer = [TAGManager instance].dataLayer; // An array to store dictionaries of item data. NSMutableArray *purchasedItems = [NSMutableArray array]; // Push item data into dictionaries and store in the purchasedItems array. // Note that item.price and item.quantity must be of type NSString. for (id item in purchase.items) { [purchasedItems addObject:@{@"name": item.name, @"sku": item.sku, @"category": item.category, @"price": item.price, @"currency": @"USD", @"quantity": item.quantity}]; } // This call assumes the container has already been opened, otherwise events // pushed to the DataLayer will not fire tags in that container. // Note that purchase.tax, purchase.shipping, and purchase.total must be of type NSString. [dataLayer push:@{@"event": @"transaction", // Event, name of Transaction Event. @"transactionId": purchase.transactionId, // Additional fields required by the tag. @"transactionTotal": purchase.total, @"transactionAffiliation": @"In-app Store", @"transactionTax": purchase.tax, @"transactionShipping": purchase.shipping, @"transactionCurrency": @"USD", @"transactionProducts": purchasedItems}]; // Since the data layer is persistent, you should reset fields to [NSNull null] after // you are done pushing the transaction. [dataLayer push:@{@"transactionId": [NSNull null], @"transactionTotal": [NSNull null], @"transactionAffiliation": [NSNull null], @"transactionTax": [NSNull null], @"transactionShipping": [NSNull null], @"transactionCurrency": [NSNull null], @"transactionProducts": [NSNull null]}]; }
Consulte Comércio eletrônico avançado e veja como usar o SDK do Gerenciador de tags do Google para Android ao implementar os recursos de comércio eletrônico avançado do Universal Analytics.
Variáveis compatíveis da camada de dados de comércio eletrônico
As tags universais da transação são compatíveis com os seguintes nomes de variáveis da transação e do item.
Variáveis de transação
Nome da variável | Descrição | Tipo | Obrigatório |
---|---|---|---|
transactionId |
Identificador exclusivo da transação | string | Sim |
transactionAffiliation |
Parceiro ou loja | string | Não |
transactionTotal |
Valor total da transação | string | Não |
transactionTax |
O valor do imposto da transação | string | Não |
transactionShipping |
O custo do frete para a transação | string | Não |
transactionCurrency |
Moeda da transação | string | Não |
transactionProducts |
Lista de itens comprados na transação | uma matriz de variáveis de item | Não |
Variáveis de item
Nome da variável | Descrição | Tipo | Obrigatório |
---|---|---|---|
name |
Nome do produto | string | Sim |
sku |
SKU do produto | string | Não |
category |
Categoria do produto | string | Não |
price |
Preço do produto | string | Não |
currency |
O tipo de moeda de price |
string | Não |
quantity |
Quantidade de itens | string | Não |
Enviar dados de comércio eletrônico avançado
Para saber mais sobre o envio de dados do comércio eletrônico avançado, consulte o Guia do desenvolvedor.