Når du har opprettet dyplinker, må du slå dem på i målings-SDK-en for å bruke dem i appkampanjer.
Denne artikkelen handler om hvordan du slår på utsatt dyplinking i den nyeste versjonen av Google Analytics for Firebase (GA4F) SDK eller i løsninger fra tredjeparts appattribusjonspartnere (AAP-er) vi støtter. Finn ut hvordan du sporer konverteringer i mobilapper via tredjepartsverktøy.
Før du begynner
For å slå på utsatt dyplinking i AAP-er som støttes, må du ha fungerende dyplinker som er ordentlig inkludert i den tilknyttede feeden, eller som er sendt inn som utsatt dyplinking for annonsegrupper.
Veiledning
Slik aktiverer du utsatt dyplinking i løsninger fra støttede AAP-er
Per nå støtter Google disse tredjeparts-AAP-ene i forbindelse med utsatt dyplinking:
- Adjust
- AppsFlyer
- Branch
- Kochava
- Singular
Følg fremgangsmåten nedenfor for å slå på utsatt dyplinking i den valgte AAP-løsningen.
Adjust
AppsFlyer
- Klikk på Configuration > Integrated Partners (konfigurasjon > integrerte partnere) i AppsFlyer, og velg så Google Ads (AdWords).
- Slå på «Deferred deep linking with Google feeds» (utsatt dyplinking med Google-feeder) på Integration-fanen (integrering).
- Klikk på Save integration (lagre integrasjonen).
Branch
Kochava
Singular
Finn ut mer om sporing av appkonverteringer via appattribusjonspartnere.
Slik aktiverer du utsatt dyplinking i GA4F SDK
Du kan aktivere utsatt dyplinking i GA4F SDK via Android-versjon 17.2.0 eller nyere ved å følge denne fremgangsmåten:
Fremgangsmåte for å aktivere utsatt dyplinking i GA4F SDK
1. Konfigurer appen din slik at den bruker Google Analytics for Firebase
Fjern alle avhengigheter tilknyttet firebase-core
fra app build.gradle. Legg så til eller oppdater avhengigheten av versjon 17.2.0 eller nyere av firebase-analytics
. I eksempelet nedenfor brukes en nyere versjon av SDK-en.
dependencies {
...
implementation 'com.google.firebase:firebase-analytics:21.0.0'
...
}
2. Slå på funksjonen i appen din
Endre appmanifestet ved å legge til dette metadatataggen 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">
<!-- 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>
Etter aktiveringen henter GA4F den konfigurerte dyplinken, ved oppstart av appen, for den tilsvarende kampanjen du konfigurerte.
3. Registrer dyplinken
Konfigurer en lytter for SharedPreferences-endringer i hovedklassen for oppstartaktivitet. Denne funksjonen utløses når en utsatt dyplink er tilgjengelig. Hvis du registrerer lytteren senere i appens livssyklus, kan dyplinken allerede være hentet. I så fall utløses ikke lytteren, og du kan umiddelbart se verdien av dyplinken i Sharedpreferences.
GA4F lagrer dyplinken i en SharedPreferences-fil – google.analytics.deferred.deeplink.prefs
– med nøkkelen deeplink
. I den samme SharedPreferences-filen lagrer GA4F også annonseklikkets tidsstempel med nøkkelen timestamp
. Merk deg at formatet i tidsstemplet er mikrosekunder (millisekunder etterfulgt av et punktum og mikrosekunder), og det lagres i SharedPreferences ved hjelp av en Long-funksjon når typen er Double. Bruk Double.longBitsToDouble(...) til å parse den faktiske verdien.
Eksempel:
/**
* Hovedaktiviteten i appen ved oppstart.
*/
public class MainActivity extends AppCompatActivity {
privat SharedPreferences preferences;
privat 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. Klargjør data for diagnostisk testing
For å validere implementeringen må du hente annonse-ID-en for enheten du vil teste med. Du kan bruke denne kommandoen til å angi den utsatte dyplinken som appen skal motta:
"googleadservices.com/pagead/conversion/app/deeplink?&rdid=<<annonse-ID-en for enheten din>>&id_type=adid&bundleid=<<app-pakken din>>&deeplink=<<dyplinken du vil motta>>&ddl_test=1"
Hvis du vil sjekke om dyplinken er korrekt konfigurert, kan du bruke denne forespørselen til å bekrefte svaret:
Denne test-dyplinken utløper etter 24 timer. Gjenta dette trinnet hvis test-dyplinken utløper.
5. Slå på testmodus for å hente den utsatte test-dyplinken.
Slå på testmodusen for utsatt dyplinking for å starte testingen på enhetene dine.
adb shell setprop debug.deferred.deeplink <<app-pakken din>>
Deretter må du slå på feilsøkingsmodus på enheten. Begynn å bruke appen. I Logcat må du så sjekke at 18200
eller høyere er oppgitt som gmp_version
i loggmeldingen. Når du søker etter søkeordet deferred
(utsatt), filtreres det etter alle feilsøkingsmeldinger fra Google Analytics for Firebase som er relatert til den funksjonaliteten.
Eksempel:
D/FA: Deferred Deep Link feature enabled.
FA-SVC: Uploading data. app, uncompressed size, data: <<app-pakken din>>,
…
gmp_version: 18200