Medição de campanhas: SDK para Android v2 (legado)

Este documento contém uma visão geral de como avaliar campanhas e origens de tráfego com o SDK do Google Analytics para Android v2.

Visão geral

Medir as campanhas no Google Analytics pode ajudar a melhorar o valor dos seus canais de marketing, permitindo a atribuição de campanhas e origens de tráfego à atividade do usuário no seu aplicativo.

Há vários tipos de medição de campanhas disponíveis no SDK do Google Analytics para Android:

As seções a seguir descrevem quando e como implementar cada tipo de avaliação de campanhas no seu aplicativo.

Medição de campanhas do Google Play

A avaliação de campanhas do Google Play permite que você veja quais campanhas e origens de tráfego estão enviando os usuários para fazer o download do seu aplicativo na Google Play Store. Recomendamos que todos os desenvolvedores implementem a medição de campanhas da Google Play Store.

Como funciona a medição de campanhas do Google Play

A medição de campanhas da Google Play Store depende do uso de parâmetros de campanha para transmitir informações de campanhas e origens de tráfego para seu app no momento do download na Google Play Store.

Veja a seguir uma descrição completa de como funciona a medição de campanhas do Google Play:

  1. Um usuário clica em um link de um anúncio, site ou app que o direciona para a página do seu aplicativo na Google Play Store. O link está codificado com Parâmetros de campanha.
  2. Depois que o usuário fizer o download e instalar seu app, a Google Play Store transmitirá uma intent INSTALL_REFERRER no dispositivo que inclui esses mesmos parâmetros de campanha.
  3. Em seguida, seu app responderá a essa intent usando o objeto BroadcastReceiver fornecido abaixo, lendo os parâmetros da campanha e usando-os para atualizar as informações da campanha do Google Analytics.

Implementação da medição de campanhas do Google Play

Para implementar a medição de campanhas da Google Play Store:

1. Adicionar um novo BroadcastReceiver ao arquivo AndroidManifest.xml

O BroadcastReceiver abaixo permite que o app responda à intent INSTALL_REFERRER transmitida pela Google Play Store quando o app está instalado. Adicione-o ao arquivo AndroidManifest.xml da seguinte maneira:

<!-- Used for install referral measurement-->
<service android:name="com.google.analytics.tracking.android.CampaignTrackingService"/>
<receiver android:name="com.google.analytics.tracking.android.CampaignTrackingReceiver" android:exported="true">
  <intent-filter>
    <action android:name="com.android.vending.INSTALL_REFERRER" />
  </intent-filter>
</receiver>

2. Adicionar parâmetros de campanha aos links da Google Play Store

Os parâmetros de campanha são usados para transmitir informações sobre a campanha ou a origem de tráfego que encaminhou um usuário à página da Google Play Store do seu aplicativo para a implementação do Google Analytics no seu aplicativo.

Para saber como criar uma string de parâmetros de campanha, use o criador de URLs do Google Play ou consulte a seção de referência Parâmetros de campanha.

Depois de criar a string de parâmetros da campanha, adicione-a aos URLs da Google Play Store como o valor do parâmetro referrer, como neste exemplo:

https://play.google.com/store/apps/details?id=com.example.app
&referrer=utm_source%3Dgoogle
%26utm_medium%3Dcpc
%26utm_term%3Drunning%252Bshoes
%26utm_content%3DdisplayAd1
%26utm_campaign%3Dshoe%252Bcampaign

A Google Play Store só transmitirá o valor do parâmetro referrer para a implementação do Google Analytics no seu app. Por isso, é importante verificar se ele está presente nos seus links da Google Play Store.

Medir campanhas gerais

A medição geral de campanhas pode ser usada para associar uma campanha ou origem de tráfego a um usuário depois que ele já instala seu app.

Por exemplo, se você estivesse veiculando uma campanha paga para alcançar usuários atuais que já instalaram seu app, poderá usar uma medição geral da campanha para saber quais lançamentos de app foram resultado dessa campanha.

Implementação da medição geral de campanhas

Para definir valores para uma campanha geral, chame setCampaign() e transmita uma string de parâmetro da campanha como argumento.

Uma implementação típica pode chamar setCampaign() quando o app é iniciado e verificar a intent que o iniciou para ver se há parâmetros de campanha válidos:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the intent that started this Activity.
    Intent intent = this.getIntent();
    Uri uri = intent.getData();

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before calling activityStart().
    EasyTracker.getInstance().setContext(this);

    if (intent.getData() != null) {
      EasyTracker.getTracker().setCampaign(uri.getPath());
    }
    ... // The rest of your onCreate() code.
  }

  @Override
  public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

Medir as referências

A avaliação de referências é semelhante a outros tipos de avaliação de campanha, porque permite avaliar uma origem de referência que iniciou seu aplicativo no dispositivo de um usuário. No entanto, a avaliação de referências usa uma string simples, como "google.com" ou "myOtherApp", em vez de uma string de parâmetros de campanha.

Quando você define uma origem de referência, como "google.com", a dimensão de origem é definida como "google.com", e a dimensão de mídia é implicitamente definida como "referrer"

Assim como acontece com a avaliação de campanhas, definir uma origem de referência fará, por padrão, a próxima chamada de envio iniciar uma nova sessão.

No snippet de código a seguir, presumimos que você tenha codificado todos os links que abririam seu aplicativo com parâmetros de campanha do Google Analytics ou com um parâmetro referrer simples descrevendo a origem de referência. Se o parâmetro referrer estiver presente na ausência de outros parâmetros de campanha, as informações da campanha do usuário serão atualizadas com a nova origem de referência:

public class SampleActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the intent that started this Activity.
    Intent intent = this.getIntent();
    Uri uri = intent.getData();

    // Call setContext() here so that we can access EasyTracker
    // to update campaign information before activityStart() is called.
    EasyTracker.getInstance().setContext(this);

    if (uri != null) {
      if(uri.getQueryParmeter("utm_source") != null) {    // Use campaign parameters if avaialble.
        EasyTracker.getTracker().setCampaign(uri.getPath());
      } else if (uri.getQueryParameter("referrer") != null) {    // Otherwise, try to find a referrer parameter.
        EasyTracker.getTracker().setReferrer(uri.getQueryParameter("referrer"));
      }
    }
  }


  @Override
    public void onStart() {
    super.onStart();
    EasyTracker.getInstance().activityStart(this);
    ... // The rest of your onStart() code.
  }


  @Override
  public void onStop() {
    super.onStop();
    EasyTracker.getInstance().activityStop(this);
    ... // The rest of your onStop() code.
  }
}

Problemas conhecidos

  • O javadoc para CampaignTrackingReceiver utiliza um caminho de classe incorreto no exemplo de uso. Consulte Como implementar a avaliação de campanhas do Google Play para ver o uso correto.
  • Somente uma classe BroadcastReceiver pode ser especificada por app. Se você precisar incorporar dois ou mais BroadcastReceivers de SDKs diferentes, crie sua própria classe BroadcastReceiver que vai receber todas as transmissões e chamar o BroadcastReceivers apropriado para cada tipo de transmissão.
  • No momento, a medição de campanhas do Google Play não é compatível com instalações da Web para dispositivos iniciadas pela Play Store na Web.

Parâmetros de campanha

Os parâmetros de campanha são usados para transmitir informações sobre as origens de tráfego e as campanhas que atraem usuários para seu aplicativo.

  • Na medição geral de campanhas, uma string de parâmetro de campanha não codificada é transmitida como um argumento para setCampaign().
  • Na avaliação de campanhas do Google Play, um parâmetro referrer com uma string de parâmetros de campanha codificada como valor é anexado aos URLs que direcionam para a página da Play Store do seu aplicativo.

Confira a seguir um exemplo de uma string de campanha válida e não codificada que pode ser usada para a avaliação geral de campanhas:

"utm_campaign=my_campaign&utm_source=google&utm_medium=cpc&utm_term=my_keyword&utm_content=ad_variation1"

A tabela abaixo mostra a lista completa dos parâmetros de campanha disponíveis que podem ser usados no Google Play ou na avaliação geral de campanhas.

Parâmetro Descrição Exemplos
utm_campaign Nome da campanha: usado para a análise de palavras-chave com o objetivo de identificar especificamente uma campanha estratégica ou a promoção de um produto utm_campaign=spring_sale
utm_source Origem da campanha: usado para identificar um mecanismo de pesquisa, boletim informativo ou outra origem utm_source=google
utm_medium Mídia da campanha: usado para identificar uma mídia, como e-mail ou custo por clique (CPC). utm_medium=cpc
utm_term Termo da campanha: usado com a pesquisa paga para fornecer as palavras-chave para os anúncios. utm_term=running+shoes
utm_content Conteúdo da campanha: usado para testes A/B e anúncios segmentados por conteúdo para diferenciar anúncios ou links que direcionam ao mesmo URL. utm_content=logolink
utm_content=textlink
gclid Parâmetro de codificação automática do Google Ads: usado para medir o Google Ads. Esse valor é gerado dinamicamente e nunca deve ser modificado.

Criador de URL do Google Play

Gere URLs para a avaliação de campanhas do Google Play com o criador de URLs do Google Play.