Depois que você criar links diretos, eles precisam ser ativados no seu SDK de medição para serem usados nas campanhas para apps.
Neste artigo, explicamos como ativar os links diretos adiados (DDLs) em parceiros de atribuição de app (AAPs) de terceiros compatíveis ou no SDK mais recente do Google Analytics para Firebase (GA4F). Saiba como usar o acompanhamento de conversões de apps para dispositivos móveis com ferramentas de terceiros.
Antes de começar
Para ativar a DDL em um AAP compatível, você precisa ter links diretos incluídos no feed anexado ou enviados como uma DDL do grupo de anúncios.
Instruções
Como ativar a DDL em AAPs aceitos
Os AAPs de terceiros atualmente compatíveis com o Google para DDL são os seguintes:
- Ajustar
- AppsFlyer
- Branch
- Kochava
- Singular
Siga as etapas abaixo para ativar DDL no AAP escolhido.
Ajustar
AppsFlyer
- No AppsFlyer, clique em Configuração > Parceiros integrados e selecione Google Ads (AdWords).
- Na guia Integração, ative a opção "Link direto adiado com feeds do Google".
- Clique em Save integration.
Branch
Kochava
Singular
Saiba Como acompanhar as conversões de apps com um parceiro de atribuição de app.
Como ativar DDL no SDK do GA4F
É possível ativar a DDL no SDK do GA4F usando a versão 17.2.0+ do Android ou uma mais recente. Para isso, siga estas etapas:
Etapas para ativar a DDL no SDK do GA4F
1. Configure seu app para usar o Google Analytics para Firebase
No app build.gradle, remova todas as dependências em firebase-core
. Em seguida, adicione ou atualize a dependência na versão 17.2.0+ do firebase-analytics
. O exemplo abaixo usa uma versão mais recente do SDK.
dependencies {
...
implementation 'com.google.firebase:firebase-analytics:21.0.0'
...
}
2. Ative o recurso no seu app
Para modificar o manifesto do aplicativo, adicione a seguinte tag de metadados à tag do app.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myawesome.app">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:name=".MainActivity">
<!-- Value to be added to enable deferred deep links -->
<meta-data android:name="google_analytics_deferred_deep_link_enabled" android:value="true"/>
<activity
android:name=".MainActivity" >
</activity>
</application>
</manifest>
Quando ativado, o GA4F busca o link direto configurado, na inicialização do app, para a campanha específica que você configurou.
3. Capture o link direto
Configure um listener de mudanças de SharedPreferences na classe de atividade de lançamento principal. Ele será acionado quando uma DDL estiver disponível. Se você está registrando o listener em uma etapa posterior do ciclo de vida do app, o link direto já pode ter sido recuperado. Nesse caso, o listener não será acionado, e você poderá pesquisar imediatamente o valor do link direto lendo SharedPreferences.
O GA4F armazena o link direto em um arquivo SharedPreferences google.analytics.deferred.deeplink.prefs
com a chave deeplink
. O GA4F também armazena no mesmo arquivo o carimbo de data/hora do clique no anúncio com a chave timestamp
. O carimbo é mostrado no formato de microssegundos (milissegundos seguidos por um ponto e microssegundos) e armazenado em SharedPreferences usando um Long quando o tipo é Double. Use Double.longBitsToDouble(...) para analisar o valor real.
Exemplo:
/**
* A atividade de lançamento principal do app.
*/
public class MainActivity extends AppCompatActivity {
particular SharedPreferences preferences;
particular SharedPreferences.OnSharedPreferenceChangeListener deepLinkListener;
@Override
protected void onStart() {
super.onStart();
preferences.registerOnSharedPreferenceChangeListener(deepLinkListener);
}
@Override
protected void onStop() {
super.onStop();
preferences.unregisterOnSharedPreferenceChangeListener(deepLinkListener);
deepLinkListener = null;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
preferences =
getSharedPreferences("google.analytics.deferred.deeplink.prefs", MODE_PRIVATE);
deepLinkListener = (sharedPreferences, key) -> {
Log.d("DEEPLINK_LISTENER", "Deep link changed");
if ("deeplink".equals(key)) {
String deeplink = sharedPreferences.getString(key, null);
Double cTime = Double.longBitsToDouble(sharedPreferences.getLong("timestamp", 0));
Log.d("DEEPLINK_LISTENER", "Deep link retrieved: " + deeplink);
showDeepLinkResult(deeplink);
}
};
}
public void showDeepLinkResult(String result) {
String toastText = result;
if (toastText == null) {
toastText = "The deep link retrieval failed";
} else if (toastText.isEmpty()) {
toastText = "Deep link empty";
}
Toast.makeText(MainActivity.this, toastText, Toast.LENGTH_LONG).show();
Log.d("DEEPLINK", toastText);
}
}
4. Prepare os dados para testes de diagnóstico
Para validar sua implementação, instale o ID de publicidade do dispositivo a ser testado. Use o seguinte comando para definir a DDL que o aplicativo receberá.
"googleadservices.com/pagead/conversion/app/deeplink?&rdid=<<your device adid>>&id_type=adid&bundleid=<<your application package>>&deeplink=<<deeplink you want to receive>>&ddl_test=1"
Caso queira saber se o link direto foi configurado corretamente, use esta solicitação para verificar a resposta.
Esse link direto de teste expira após 24 horas. Caso isso aconteça, repita essa etapa.
5. Ative o modo de teste para buscar a DDL de teste
Ative o modo de teste da DDL para iniciar a testagem nos seus dispositivos.
adb shell setprop debug.deferred.deeplink <<your application package>>
Em seguida, ative o modo de depuração no dispositivo. Comece a usar seu app e, na Logcat, verifique se a mensagem de registro mostra uma gmp_version
de pelo menos 18200
. Ao pesquisar a palavra-chave adiada
, todas as mensagens de depuração do Google Analytics para Firebase relacionadas a essa funcionalidade serão filtradas.
Exemplo:
D/FA: recurso de link direto adiado ativado.
FA-SVC: Uploading data. app, uncompressed size, data: <<your application package>>,
…
gmp_version: 18200