Analytics

Depois de adicionar a biblioteca ao seu projeto, você pode fazer qualquer uma das chamadas de método do Analytics em qualquer lugar no aplicativo.

DICA

Certifique-se de importar ADBMobile.h para sua classe.

Ativar relatórios de aplicativos móveis no Analytics

Antes de adicionar o código, peça para que o administrador do Analytics conclua o seguinte para ativar o rastreamento do ciclo de vida do aplicativo móvel. Isso garante que seu conjunto de relatórios esteja pronto para capturar métricas à medida que você iniciar o desenvolvimento.

  1. Abra Ferramentas ​administrativas > Report Suites e selecione seus report suites móveis.

  2. Clique em Editar configurações > Gerenciamento ​móvel > Relatórios do aplicativo móvel.

  3. Clique em Ativar os relatórios mais recentes do aplicativo.

    Opcionalmente, você também pode clicar em Ativar rastreamento de localização móvel ou em Ativar Relatórios e atribuição herdados para ocorrências em segundo plano.

As medições de ciclo de vida estão prontas para serem capturadas e os Relatórios de aplicativo móvel são exibidos no menu Relatórios na interface dos relatórios de marketing.

Novas versões

Periodicamente, novas versões do relatórios de aplicativo móvel são lançadas. As novas versões não são aplicadas automaticamente ao seu conjunto de relatórios, você deve repetir essas etapas para executar a atualização. Sempre que você adicionar uma nova funcionalidade de Experience Cloud ao seu aplicativo, recomendamos que repita essas etapas para garantir que você tenha a configuração mais recente.

Métricas de ciclo de vida

Para coletar medições de ciclo de vida em seu aplicativo, adicione chamadas para quando o aplicativo for ativado, como mostrado nos exemplos a seguir.

WinJS em default.js

app.onactivated = function (args) { 
  if (args.detail.kind === activation.ActivationKind.launch) { 
   ... 
   // launched and resumed stuff  
   ADBMobile.Config.collectLifecycleData(); 
  } 
}; 
app.oncheckpoint = function (args) { 
  ADBMobile.Config.pauseCollectingLifecycleData(); 
}

C# em App.xaml.cs

public App() 
{ 
    this.InitializeComponent(); 
    this.Resuming += OnResuming; 
    this.Suspending += OnSuspending; 
} 
protected override void OnLaunched(LaunchActivatedEventArgs e) 
{   ... 
    ADBMobile.Config.CollectLifecycleData(); 
    ... 
} 
private void OnResuming(object sender, object e) 
{ 
    ... 
    ADBMobile.Config.CollectLifecycleData(); 
    ... 
} 
private void OnSuspending(object sender, SuspendingEventArgs e) 
{ 
    ... 
    ADBMobile.Config.PauseCollectingLifecycleData(); 
    ... 
}

C++/CX em App.xaml.cpp

App::App() 
{ 
 InitializeComponent(); 
 Resuming += ref new EventHandler<Object ^>(this, &App::OnResuming); 
 Suspending += ref new SuspendingEventHandler(this, &App::OnSuspending); 
} 
void App::OnResuming(Object ^sender, Object ^args) 
{ 
 ... 
 ADBMobile::Config::CollectLifecycleData(); 
 ... 
} 
void App::OnSuspending(Object^ sender, SuspendingEventArgs^ e) 
{ 
 ... 
 ADBMobile::Config::PauseCollectingLifecycleData(); 
 ... 
} 
void App::OnLaunched(Windows::ApplicationModel::Activation::LaunchActivatedEventArgs^ e) 
{ 
 ... 
 ADBMobile::Config::CollectLifecycleData(); 
 ... 
}

Se CollectLifecycleData() for chamado duas vezes na mesma sessão, seu aplicativo reportará uma falha em cada chamada após a primeira. O SDK define um sinalizador quando o aplicativo é desligado que indica uma saída bem-sucedida. Se esse sinalizador não estiver definido, CollectLifecyleData() reportará uma falha.

Eventos, propriedades e eVars

Se você observou os métodos doSDK, provavelmente está se perguntando onde definir eventos, eVars, props, herdeiros e listas. Na versão 4, não é mais possível atribuir esses tipos de variáveis diretamente no aplicativo. Em vez disso, o SDK usa dados de contexto e regras de processamento para mapear os dados do aplicativo para as variáveis do Analytics para os relatórios.

As regras de processamento oferecem várias vantagens:

  • Você pode alterar o mapeamento de dados sem enviar uma atualização para a loja de aplicativos.
  • Você pode usar nomes significativos para dados em vez de definir variáveis específicas para um conjunto de relatórios.
  • Há pouco impacto no envio de dados extras. Esses valores não aparecerão nos relatórios até que sejam mapeados usando as regras de processamento.

Quaisquer valores atribuídos diretamente às variáveis devem ser adicionados aos dados de contexto.

Regras de processamento

As regras de processamento são usadas para copiar os dados enviados nas variáveis de dados de contexto para evars, props e outras variáveis do relatórios.

Treinamento em regras de processamento na Conferência de 2013

Ajuda das regras de processamento

Receber autorização para usar as regras de processamento

Recomendamos agrupar as variáveis de dados de contexto usando "namespace", pois isso ajuda a manter a ordem lógica. Por exemplo, se você deseja coletar informações sobre um produto, pode definir as seguintes variáveis:

"product.type":"hat" 
"product.team":"mariners" 
"product.color":"blue"

As variáveis de dados de contexto são classificadas em ordem alfabética na interface das regras de processamento, de modo que o namespace permite que você veja rapidamente as variáveis que estão na mesma namespace.

Além disso, ouvimos que alguns de vocês estão nomeando chaves de dados de contexto usando o número de evar ou prop:

"eVar1":"jimbo"

This might make it slightly easier when you perform the one time mapping in processing rules, but you lose readability during debugging and future code updates can be more difficult. Em vez disso, recomendamos o uso de nomes descritivos para chaves e valores:

"username":"jimbo"

Defina variáveis de contexto que definem eventos de contador com um valor de "1":

"logon":"1"

As variáveis de dados de contexto que definem eventos de incremento podem ter o valor a incrementar:

"levels completed":"6"
DICA

A Adobe reserva o namespace a.. Além dessa restrição, as variáveis de dados de contexto precisam ser exclusivas na empresa de logon para evitar colisões.

Variável products

Para configurar products no SDK móvel, é necessário usar uma sintaxe especial. Para obter mais informações, consulte Variável de produtos.

(Opcional) Habilitar rastreamento offline

Para armazenar ocorrências quando o dispositivo estiver offline, é possível ativar o rastreamento offline no arquivo de métodos do SDK. Preste atenção aos requisitos de carimbo de data e hora descritos na referência do arquivo de configuração antes de ativar o rastreamento offline.

Geolocalização e pontos de interesse

A localização geográfica permite medir os dados de localização (latitude/longitude) e os pontos de interesse predefinidos. Cada TrackLocation chamada envia:

  • Latitude/longitude e POI (se estiver dentro de um POI definido no arquivo de ADBMobileConfig.json configuração).

    Elas são transmitidas para variáveis de solução móvel para relatórios automático.

  • Distância do centro e precisão transmitidas como dados de contexto.

    Capture usando uma regra de processamento.

Para rastrear um local:

var ADB = ADBMobile; 
ADB.Analytics.trackLocation(37.75345, -122.33207, null);

Se o seguinte POI estiver definido no arquivo de ADBMobileConfig.json configuração:

"poi" : [ 
            ["San Francisco",37.757144,-122.44812,7000], 
        ]

Quando o local do dispositivo é determinado como estando dentro de um raio de 7.000 metros do ponto definido, uma variável de dados de a.loc.poi contexto com o valor San Francisco é enviada com a TrackLocation ocorrência. An a.loc.dist context variable is sent with the distance in meters from the defined coordinates.

Lifetime value

O valor de tempo de vida permite medir e atingir um valor para cada usuário. Cada vez que um valor é enviado com TrackLifetimeValueIncrease, o valor é adicionado ao valor existente. O valor de tempo de vida é armazenado no dispositivo e pode ser recuperado a qualquer momento ao chamar GetLifetimeValue. Isso pode ser usado para armazenar compras de tempo de vida, exibições de anúncios, conclusões de vídeos, compartilhamentos nas redes sociais, carregamentos de fotos e assim por diante.

// Lifetime Value Example 
var ADB = ADBMobile; 
var purchasePrice = 39.95; 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
cdata["ItemPurchaseEvent"] = "ItemPurchaseEvent"; 
cdata["PurchaseItem"] = "Item453"; 
cdata["PurchasePrice"] = purchasePrice; 
ADB.Analytics.trackLifetimeValueIncrease(purchasePrice, cdata);

Ações cronometradas

As ações cronometradas permitem medir o tempo no aplicativo e o tempo total entre o start e o fim de uma ação. O SDK calcula a quantidade de tempo na sessão e o tempo total (entre sessões) necessário para a ação ser concluída. Isso pode ser usado para definir segmentos a serem comparados na hora da compra, no nível de passagem, no fluxo de checkout e assim por diante.

  • Número total de segundos no aplicativo entre o início e o término - sessões cruzadas
  • Número total de segundos entre o início e o término (hora do relógio)
// Timed Action Start Example 
var ADB = ADBMobile; 
var cdata = new Windows.Foundation.Collections.PropertySet(); 
cdata["ExperienceName"] = experience; 
ADB.Analytics.trackTimedActionStart("TimeUntilPurchase", cdata);
// Timed Action Update Example 
var ADB = ADBMobile; 
var cdataUpdate = new Windows.Foundation.Collections.PropertySet(); 
cdataUpdate["ImageLiked"] = imageName; 
ADB.Analytics.trackTimedActionStart("TimeUntilPurchase", cdata); 
// Timed Action End Example 
var ADB = ADBMobile; 
ADB.Analytics.trackTimedActionEnd("TimeUntilPurchase");

Nesta página