How can we help?

Integração do SDK do Windows para desenvolvedores

  • Atualizado

Visão geral: adicione a AppsFlyer a aplicativos e jogos do Windows para medir instalações do aplicativo, eventos in-app, canais de mídia e muito mais. 

Versão atual: 3.1.0 (17/12/2023)

O SDK da AppsFlyer fornece funcionalidade de instalação do aplicativo e registro de eventos. 

SDK_Integration.jpg

Você pode registrar instalações, atualizações e sessões (seguindo as etapas obrigatórias abaixo) e também registrar eventos in-app adicionais além das instalações do aplicativo (incluindo compras in-app, níveis de jogo etc.) para avaliar o ROI e os níveis de engajamento do usuário.

 Importante!

O SDK do Windows da AppsFlyer é compatível com todos os dispositivos da Universal Windows Platform (UWP), incluindo telefones Windows, PCs, HoloLens e Surface Hub.

1. Etapas de integração

O SDK Universal do Windows é instalado por meio do Gerenciador de Pacotes NuGet. Para instalar o SDK do Windows da AppsFlyer via NuGet:

  1. Clique com o botão direito no arquivo do projeto.
  2. Clique em Gerenciar Pacotes NuGet.
  3. Clique em Procurar e pesquise por AppsFlyerLib.
  4. Clique em AppsFlyerLib.
  5. Clique em Instalar.

Se você optar por não usar o pacote NuGet, poderá incorporar o SDK da AppsFlyer ao seu aplicativo manualmente:

  1. Baixe o SDK de aplicativo da Universal Windows Platform aqui.
  2. Copie o AppsFlyerLib.winmd para o seu projeto.
  3. No Visual Studio, clique em Adicionar Referência no projeto da Universal Windows Platform.

  • Localize o AppsFlyerLib.winmd e adicione-o.

 Importante!

A AppsFlyer usa um pacote Newtonsoft.json. Esta é uma biblioteca padrão para analisar Json no Windows. Você pode adicionar esse pacote usando o NuGet no Visual Studio. Isso resolve a exceção File Not Found na DLL.

  • No Visual Studio, clique com o botão direito em Referências, selecione o pacote NuGet Newtonsoft.json e adicione-o.
  • Permita o acesso à Internet no manifesto do aplicativo ou use o Visual Studio na guia Capacidades.

2. Evento de inicialização do SDK & de instalação (requisito mínimo para atribuição)

  • Adicione o seguinte código ao método de inicialização do aplicativo.
  • Defina seu appId e sua DevKey:
    • Preencha tracker.appId e tracker.devKey com seus valores.
    • Você pode obter sua DevKey da AppsFlyer no dashboard, em Integração do SDK.
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
	this .InitializeComponent();
	this .Suspending += this .OnSuspending;
	AppsFlyerLib. AppsFlyerTracker tracker =
	AppsFlyerLib. AppsFlyerTracker .GetAppsFlyerTracker();
	tracker.appId = "YOUR_APP_ID_HERE" ;
	tracker.devKey = "YOUR_DEV_KEY_HERE" ;
	tracker.trackAppLaunch();
}

Registro assíncrono da inicialização do aplicativo

Você pode registrar a inicialização do aplicativo de forma assíncrona. Isso é útil em casos em que a network está indisponível ou sem resposta. Você pode tratar esses casos na função Callback que você passa para o método TrackAppLaunchAsync.

tracker.TrackAppLaunchAsync(Callback);
public void Callback(AppsFlyerLib.ServerStatusCode code)
{
   if(code == AppsFlyerLib.ServerStatusCode.SUCCESS) {
      //success scenario
   } else if(code == AppsFlyerLib.ServerStatusCode.FAIL) {
   //failure scenario
   }
}

3. API de registro de eventos in-app (opcional)

Essa API permite que a AppsFlyer registre eventos pós-instalação. Esses eventos são definidos pelo anunciante e incluem um nome de evento, além de valores de evento opcionais. Adicione o código a seguir para registrar eventos pós-instalação:

public void TrackEvent(string eventName, IDictionary<string, Object> eventValues)
  • eventName é qualquer string que define o nome do evento. Você pode encontrar uma lista de nomes de evento recomendados aqui.
  • eventValues é um dicionário de parâmetros de evento que compõem um evento. Você pode encontrar uma lista de parâmetros recomendados aqui.
  • Ao contabilizar a receita como parte de eventos in-app, use o nome de parâmetro constante InAppEventParameterName.REVENUE (“af_revenue”) para contabilizar a receita como parte de um evento in-app. Você pode preenchê-lo com qualquer valor numérico, positivo ou negativo.

Exemplo

AppsFlyerLib.AppsFlyerTracker tracker = AppsFlyerLib.AppsFlyerTracker.GetAppsFlyerTracker();
      IDictionary<string, object> eventValues = new Dictionary<string, object>();
      eventValues.Add(AppsFlyerLib.AFInAppEventParameterName.CONTENT_ID, "id123");
      eventValues.Add(AppsFlyerLib.AFInAppEventParameterName.REVENUE, "10");
      eventValues.Add(AppsFlyerLib.AFInAppEventParameterName.CURRENCY, "USD");
      tracker.TrackEvent(AppsFlyerLib.AFInAppEventType.ADD_TO_CART, eventValues);

Registrar eventos assincronamente

Você pode registrar eventos assincronamente. Isso é útil nos casos em que a network está indisponível ou sem resposta. Você pode lidar com esses casos na função Callback que você passa para o método TrackEventAsync.

tracker.TrackEventAsync(AppsFlyerLib.AFInAppEventType.PURCHASE, events, Callback);
public void Callback(AppsFlyerLib.ServerStatusCode code)
{
   if(code == AppsFlyerLib.ServerStatusCode.SUCCESS) {
      //cenário de sucesso
   } else if(code == AppsFlyerLib.ServerStatusCode.FAIL) {
     //cenário de falha
   }
}

Para ver uma lista completa dos eventos in-app avançados da AppsFlyer, clique aqui.

4. Integração avançada

As APIs a seguir são opcionais e fazem parte da integração avançada com o SDK da AppsFlyer.

4.1 definir o código da moeda (opcional)

Você pode definir um código de moeda global usando a API abaixo, além de códigos de moeda específicos que podem ser usados como parte de cada evento no aplicativo enviado para a AppsFlyer.

USD é o valor padrão. Você pode encontrar os códigos de moeda ISO aceitos aqui.

Use a seguinte API para definir o código de moeda:

tracker.currencyCode = "GBP";

4.2 getAppsFlyeruid (opcional)

Uma ID exclusiva da AppsFlyer é criada para cada nova instalação de um aplicativo.

Use a seguinte API para obter essa ID:

public string getAppsFlyerUID()

4.3 ID de usuário do cliente (opcional)

Definir seu próprio ID de cliente permite que você faça referência cruzada do seu próprio ID exclusivo com o ID de usuário da AppsFlyer e todos os outros IDs de dispositivo. Essa ID está disponível nos relatórios CSV da AppsFlyer junto com as APIs de postback para referência cruzada com suas IDs internas.

Para definir sua ID de usuário cliente:

tracker.customerUserId = "YOUR_CUSTOMER_USER_ID";

4.4 GetConversionDataAsync (opcional)

Você pode receber os dados de conversão de cada instalação pelo SDK usando esta API. Adicione o código a seguir para registrar eventos de pós-instalação:

Task.Run(async () =>
{
   AppsFlyerLib.AppsFlyerTracker tracker = AppsFlyerLib.AppsFlyerTracker.GetAppsFlyerTracker();
   string conversionData = await tracker.GetConversionDataAsync();
});

4.5 Exemplo de integração com C++ / CX

AppsFlyerLib::AppsFlyerTracker^ tracker = AppsFlyerLib::AppsFlyerTracker::GetAppsFlyerTracker();
 tracker->appId = ref new Platform::String(L"APP_KEY");
 tracker->devKey = ref new Platform::String(L"APPSFLYER_KEY");
 tracker->TrackAppLaunch();
 create_task(tracker->GetConversionDataAsync()).then([tracker](Platform::String^ conversionData)
 {
 Windows::Foundation::Collections::IMap<Platform::String^, Platform::Object^>^ eventValues
 = ref new Platform::Collections::Map<Platform::String^, Platform::Object^>();

eventValues->Insert(AppsFlyerLib::AFInAppEventParameterName::CONTENT_ID, "134");
 eventValues->Insert(AppsFlyerLib::AFInAppEventParameterName::CONTENT_TYPE, "Virtual Goods");
 eventValues->Insert(AppsFlyerLib::AFInAppEventParameterName::CURRENCY, "USD");
 eventValues->Insert(AppsFlyerLib::AFInAppEventParameterName::REVENUE, "9.99");

tracker->TrackEvent(AppsFlyerLib::AFInAppEventType::PURCHASE, eventValues);
 });

This article was translated using AI and may contain errors. For the most accurate information, please refer to the English version using the language selector.


Share article: