Efter att du har skapat djuplänkar måste du aktivera dem i ditt mätnings-SDK för att kunna använda dem i appkampanjer.
I den här artikeln beskriver vi hur du aktiverar uppskjutna djuplänkar i appattributionspartner (AAP) från tredje part som stöds eller det senaste SDK:et för Google Analytics för Firebase (GA4F). Läs om hur du använder konverteringsspårning i mobilappar med tredjepartsverktyg.
Innan du börjar
Om du vill aktivera uppskjutna djuplänkar i en AAP som stöds måste du ha fungerande djuplänkar som är korrekt inkluderade i motsvarande flöde eller som har skickats in som en uppskjuten djuplänk för annonsgrupper.
Anvisningar
Så här aktiverar du uppskjutna djuplänkar via appattributionspartner som stöds
AAP:er från tredje part som för närvarande stöds av Google för uppskjutna djuplänkar är följande:
- Justera
- AppsFlyer
- Branch
- Kochava
- Singular
Följ stegen nedan för att aktivera uppskjutna djuplänkar i vald AAP.
Justera
AppsFlyer
- Klicka på Configuration > Integrated Partners i AppsFlyer och välj Google Ads (AdWords).
- Aktivera Deferred deep linking with Google feeds på fliken Integration.
- Klicka på Save integration.
Branch
Kochava
Singular
Läs mer om hur du spårar appkonverteringar med en appattributionspartner.
Aktivera uppskjutna djuplänkar i GA4F-SDK:et
Så här aktiverar du uppskjutna länkar i GA4F-SDK:et med Android-version 17.2.0+ eller senare:
Aktivera uppskjutna länkar i GA4F-SDK:et
1. Ställ in appen för att använda Google Analytics för Firebase
Ta bort alla beroenden till firebase-core
i appens build.gradle. Lägg sedan till eller uppdatera beroendet till firebase-analytics
version 17.2.0+. I exemplet nedan används en senare version av SDK:et.
dependencies {
...
implementation 'com.google.firebase:firebase-analytics:21.0.0'
...
}
2. Aktivera funktionen i din app
Modifiera appens manifest genom att lägga till följande metadatatagg i apptaggen.
<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">
<!-- Värde som ska läggas till för att aktivera uppskjutna djuplänkar -->
<meta-data android:name="google_analytics_deferred_deep_link_enabled" android:value="true"/>
<activity
android:name=".MainActivity" >
</activity>
</application>
</manifest>
När detta är aktiverat hämtar GA4F den inställda djuplänken vid appstart för motsvarande kampanj som du har ställt in.
3. Registrera djuplänken
Ställ in en lyssnare för SharedPreferences-ändringar i den huvudsakliga startaktivitetsklassen. Lyssnaren utlöses när en uppskjuten djuplänk är tillgänglig. Om du registrerar lyssnaren senare i appens livscykel kanske djuplänken redan har hämtats. I så fall utlöses inte lyssnaren och du kan se värdet på djuplänken direkt i SharedPreferences-filen.
GA4F lagrar djuplänken i en SharedPreferences-fil google.analytics.deferred.deeplink.prefs
med nyckeln deeplink
. GA4F lagrar även tidsstämpeln för annonsklicket med nyckeln tidsstämpel
i samma SharedPreferences-fil. Observera att tidsstämpelns format är mikrosekunder (millisekunder följt av en punkt och mikrosekunder) och att den lagras i SharedPreferences med hjälp av en Long när typen är Double. Använd Double.longBitsToDouble(...) för att analysera det faktiska värdet.
Exempel:
/**
* Appens huvudsakliga startaktivitet.
*/
public class MainActivity extends AppCompatActivity {
private SharedPreferences preferences;
private 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. Förbereda data för diagnostisk testning
Kontrollera implementeringen genom att hämta AdID för enheten du vill testa den på. Du kan använda följande kommando för att ställa in den uppskjutna djuplänk som appen ska ta emot.
"www.googleadservices.com/pagead/conversion/app/deeplink?&rdid=<<enhetens AdID>>&id_type=adid&bundleid=<<ditt app-paket>>&deeplink=<<djuplänk som du vill ta emot>>&ddl_test=1"
Du kan använda följande begäran för att kontrollera om djuplänken har ställts in på rätt sätt.
Testdjuplänken löper ut efter 24 timmar. Upprepa det här steget om djuplänken går ut.
5. Aktivera testläge för att hämta den uppskjutna testdjuplänken
Aktivera testläget för att börja testa uppskjutna djuplänkar på dina enheter.
adb shell setprop debug.deferred.deeplink <<ditt app-paket>>
Aktivera felsökningsläget på enheten. Börja använda appen och kontrollera i Logcat att loggmeddelandet visar en gmp_version
som är minst 18200
. Om du söker efter sökordet deferred
filtreras alla felsökningsmeddelanden från Google Analytics för Firebase som är relaterade till den funktionen.
Exempel:
D/FA: Funktionen Uppskjutna djuplänkar har aktiverats.
FA-SVC: Uploading data. app, uncompressed size, data: <<ditt app-paket>>,
…
gmp_version: 18200