Importante: este documento descreve a versão legada do plug-in. Novos usuários devem usar o plug-in mais recente.

Plug-in do Google Analytics para Unity – referência da API

Este documento descreve como enviar dados e lista todos os métodos para o plug-in do Google Analytics para Unity.

Introdução

Quando você utilizar o plug-in do Google Analytics para Unity ao enviar dados à plataforma, use o método Basic ou Builder. É necessário usar os métodos Builder para anexar parâmetros de campanha ou dimensões ou métricas personalizadas aos hits. É possível enviar os hits usando os dois tipos de método de forma intercalada.

Consulte o Guia do desenvolvedor para criar e configurar o plug-in do Google Analytics para Unity no seu projeto.

Geral

Enviar hits

Envia hits (vista, eventos etc.) ao Google Analytics quando há uma conexão de rede disponível.

public void DispatchHits();

Recursos relacionados:

Controle de sessão

Uma sessão representa um único período de interação do usuário com seu jogo. As sessões servem como contêineres úteis de atividades avaliadas, que incluem exibições de tela, eventos e transações de comércio eletrônico.

Os métodos a seguir podem ser usados para forçar o início ou término de uma sessão.

// Start a new session.
public void StartSession();
// There should be no need to end a session explicitly. However, if you do
// need to indicate the end of session you can use the following method.
public void StopSession();

Recursos relacionados:

Telas

As telas do Google Analytics representam o conteúdo que os usuários estão visualizando no seu aplicativo. Uma exibição de tela é composta por um único campo de string que será usado como o nome da tela nos relatórios do Google Analytics.

Básico

public void LogScreen(string title);

Builder

public void LogScreen(AppViewHitBuilder builder);

Exemplo

googleAnalytics.LogScreen("Main Menu");

//Builder Hit with all App View parameters (all parameters required):
googleAnalytics.LogScreen(new AppViewHitBuilder()
    .SetScreenName("Main Menu"));

Recursos relacionados:

Eventos

Os eventos são uma forma útil de coletar dados sobre a interação de um usuário com componentes interativos no seu jogo, como o uso de determinado item. Um evento é composto por quatro campos que podem ser usados para descrever a interação de um usuário com o jogo.

Básico

public void LogEvent(string eventCategory,
    string eventAction,
    string eventLabel,
    long value);

Builder

public void LogEvent(EventHitBuilder builder);

Exemplo

googleAnalytics.LogEvent("Achievement", "Unlocked", "Slay 10 dragons", 5);

// Builder Hit with all Event parameters.
googleAnalytics.LogEvent(new EventHitBuilder()
    .SetEventCategory("Achievement")
    .SetEventAction("Unlocked")
    .SetEventLabel("Slay 10 dragons")
    .SetEventValue(5));

// Builder Hit with minimum required Event parameters.
googleAnalytics.LogEvent(new EventHitBuilder()
    .SetEventCategory("Achievement")
    .SetEventAction("Unlocked"));

Recursos relacionados:

Falhas e exceções

A avaliação de falhas e exceções permite que você avalie o número e o tipo de falhas e exceções capturadas e não capturadas que ocorrem no seu jogo.

Básico

public void LogException(string exceptionDescription, bool isFatal);

Builder

public void LogException(ExceptionHitBuilder builder);

Exemplo

googleAnalytics.LogException("Incorrect input exception", true);

// Builder Hit with all Exception parameters.
googleAnalytics.LogException(new ExceptionHitBuilder()
    .SetExceptionDescription("Incorrect input exception")
    .SetFatal(true));

// Builder Hit with minimum required Exception parameters.
googleAnalytics.LogException(new ExceptionHitBuilder());

Recursos relacionados:

Velocidade do usuário

A avaliação das velocidades dos usuários é uma forma nativa de avaliar um período no Google Analytics. Isso é útil para avaliar os tempos de carregamento de recursos, por exemplo.

Básico

public void LogTiming(string timingCategory,
    long timingInterval,
    string timingName,
    string timingLabel);

Builder

public void LogTiming(TimingHitBuilder builder);

Exemplo

googleAnalytics.LogTiming("Loading", 50L, "Main Menu", "First Load");

// Builder Hit with all Timing parameters.
googleAnalytics.LogTiming(new TimingHitBuilder()
    .SetTimingCategory("Loading")
    .SetTimingInterval(50L)
    .SetTimingName("Main Menu")
    .SetTimingLabel("First load"));

// Builder Hit with minimum required Timing parameters.
googleAnalytics.LogTiming(new TimingHitBuilder()
    .SetTimingCategory("Loading")
    .SetTimingInterval(50L));

Recursos relacionados:

Interações em redes sociais

A avaliação de interações em redes sociais permite que você avalie as interações de um usuário com vários widgets de compartilhamento e recomendação de redes sociais incorporados ao seu conteúdo.

Básico

public void LogSocial(string socialNetwork,
    string socialAction,
    string socialTarget);

Builder

public void LogSocial(SocialHitBuilder builder);

Exemplo

googleAnalytics.LogSocial("twitter", "retweet", "twitter.com/googleanalytics/status/482210840234295296");

// Builder Hit with all Social parameters.
googleAnalytics.LogSocial(new SocialHitBuilder()
    .SetSocialNetwork("Twitter")
    .SetSocialAction("Retweet")
    .SetSocialTarget("twitter.com/googleanalytics/status/482210840234295296"));

// Builder Hit with minimum required Social parameters.
googleAnalytics.LogSocial(new SocialHitBuilder()
    .SetSocialNetwork("Twitter")
    .SetSocialAction("Retweet"));

Recursos relacionados:

Comércio eletrônico

Com a avaliação do comércio eletrônico, é possível enviar as compras e vendas no jogo ao Google Analytics. Os dados do comércio eletrônico no Google Analytics são compostos por hits de transações e itens com um código de transação em comum.

Transações

Básico

public void LogTransaction(string transID,
    string affiliation,
    double revenue,
    double tax,
    double shipping);

public void LogTransaction(string transID,
    string affiliation,
    double revenue,
    double tax,
    double shipping,
    string currencyCode);

Builder

public void LogTransaction(TransactionHitBuilder builder);

Exemplo

googleAnalytics.LogTransaction("TRANS001", "Coin Store", 3.0, 0.0, 0.0);
googleAnalytics.LogTransaction("TRANS001", "Coin Store", 3.0, 0.0, 0.0, "USD");

// Builder Hit with all Transaction parameters.
googleAnalytics.LogTransaction(new TransactionHitBuilder()
    .SetTransactionID("TRANS001")
    .SetAffiliation("Coin Store")
    .SetRevenue(3.0)
    .SetTax(0)
    .SetShipping(0.0)
    .SetCurrencyCode("USD"));

// Builder Hit with minimum required Transaction parameters.
googleAnalytics.LogTransaction(new TransactionHitBuilder()
    .SetTransactionID("TRANS001")
    .SetAffiliation("Coin Store")
    .SetRevenue(3.0)
    .SetTax(0)
    .SetShipping(0.0));

Itens

Básico

public void LogItem(string transID,
    string name,
    string SKU,
    string category,
    double price,
    long quantity);

public void LogItem(string transID,
    string name,
    string SKU,
    string category,
    double price,
    long quantity,
    string currencyCode);

Builder

public void LogItem(ItemHitBuilder builder);

Exemplo

googleAnalytics.LogItem("TRANS001", "Sword", "SWORD1223", "Weapon", 3.0, 2);
googleAnalytics.LogItem("TRANS001", "Sword", "SWORD1223", "Weapon", 3.0, 2, "USD");

// Builder Hit with all Item parameters.
googleAnalytics.LogItem(new ItemHitBuilder()
    .SetTransactionID("TRANS001")
    .SetName("Sword")
    .SetSKU("SWORD1223")
    .SetCategory("Weapon")
    .SetPrice(3.0)
    .SetQuantity(2)
    .SetCurrencyCode("USD"));

// Builder Hit with minimum required Item parameters.
googleAnalytics.LogItem(new ItemHitBuilder()
    .SetTransactionID("TRANS001")
    .SetName("Sword")
    .SetSKU("SWORD1223")
    .SetPrice(3.0)
    .SetQuantity(2));

Recursos relacionados:

Dimensões e métricas personalizadas

As dimensões personalizadas permitem a associação de metadados a hits, usuários e sessões no Google Analytics, enquanto as métricas personalizadas permitem que você crie e incremente suas próprias métricas no Google Analytics.

É necessário criar e configurar dimensões e métricas personalizadas antes de usá-las. Depois de configurados, os dados podem ser enviados como parte de qualquer hit usando o método Builder.

Builder

// Custom Dimension.
public T SetCustomDimension(int dimensionNumber, string value);
// Custom Metric.
public T SetCustomMetric(int metricNumber, string value);

Exemplo

// Custom Dimension.
// An AppView hit example, but custom dimensions can be sent with all hit types.
googleAnalytics.LogScreen(new AppViewHitBuilder()
    .SetScreenName("Another screen")
    .SetCustomDimension(1, "200"));

// Custom Metric.
// An Event hit example, but custom metrics can be sent with all hit types.
googleAnalytics.LogEvent(new EventHitBuilder()
    .SetEventCategory("Achievement")
    .SetEventAction("Unlocked")
    .SetEventLabel("Slay 10 dragons")
    .SetEventValue(5)
    .SetCustomMetric(3, "200"));

Recursos relacionados:

Campanhas

O acompanhamento de campanhas no Google Analytics permite atribuir campanhas e origens de tráfego às atividades dos usuários no seu jogo.

Os parâmetros de campanha podem ser enviados como parte de qualquer hit usando o método Builder.

Builder

public T SetCampaignName(string campaignName);
public T SetCampaignSource(string campaignSource);
public T SetCampaignMedium(string campaignMedium);
public T SetCampaignKeyword(string campaignKeyword);
public T SetCampaignContent(string campaignContent);
public T SetCampaignID(string campaignID);

Exemplo

googleAnalytics.LogTiming(new TimingHitBuilder()
    .SetTimingCategory("Loading")
    .SetTimingInterval(50L)
    .SetTimingName("Main Menu")
    .SetTimingLabel("First load")
    .SetCampaignName("Summer Campaign")
    .SetCampaignSource("google")
    .SetCampaignMedium("cpc")
    .SetCampaignKeyword("games")
    .SetCampaignContent("Free power ups")
    .SetCampaignId("Summer1"));

// Send campaign parameters with timing hit.
// Builder Hit with minimum required Campaign parameters.
googleAnalytics.LogTiming(new TimingHitBuilder()
    .SetTimingCategory("Loading")
    .SetTimingInterval(50L)
    .SetTimingName("Main Menu")
    .SetTimingLabel("First load")
    .SetCampaignSource("google");

Recursos relacionados:

Avançado

Estes métodos só são recomendados para os usuários mais avançados do Google Analytics, que têm um maior domínio dos conceitos de acompanhamento.

SetOnTracker

Define valores no rastreador para enviar com outros hits.

Usa variáveis de Assets/Plugins/Fields.cs para o parâmetro fieldName (por exemplo, Fields.SCREEN_NAME).

public void SetOnTracker(Field fieldName, object value);

Exemplo

googleAnalytics.SetOnTracker(Fields.SCREEN_NAME, "Main Menu");

Dispose

Libera recursos gerenciados e redefine o rastreador.

Se o método "dispose" for chamado, o hit de acompanhamento seguinte terá de criar um novo rastreador. Por isso, recomendamos usar esse método somente depois que você terminar o acompanhamento. Por exemplo, em um método onDispose() executado quando o usuário sai do jogo.

public void Dispose();

Exemplo

googleAnalytics.Dispose();