Setelah membuat deep link, Anda harus mengaktifkannya di SDK pengukuran untuk menggunakannya di kampanye Aplikasi Anda.
Artikel ini menjelaskan cara mengaktifkan deep linking yang ditangguhkan (DDL) di Partner Atribusi Aplikasi (AAP) pihak ketiga yang didukung atau di Google Analytics for Firebase (GA4F) SDK terbaru. Pelajari lebih lanjut Tracking konversi aplikasi seluler dengan alat pihak ketiga.
Sebelum memulai
Untuk mengaktifkan DDL di AAP yang didukung, Anda harus memiliki deep link yang berfungsi dan telah disertakan dengan benar dalam feed terkaitnya atau dikirim sebagai DDL grup iklan.
Petunjuk
Cara mengaktifkan DDL di AAP yang didukung
AAP pihak ketiga yang saat ini didukung oleh Google untuk DDL adalah sebagai berikut:
- Adjust
- AppsFlyer
- Branch
- Kochava
- Singular
Ikuti langkah-langkah di bawah ini untuk mengaktifkan DDL di AAP yang Anda pilih.
Adjust
AppsFlyer
- Di AppsFlyer, klik Configuration > Integrated Partners, lalu pilih Google Ads (AdWords).
- Di tab Integration, aktifkan “Deferred deep linking with Google feeds”.
- Klik Save integration.
Branch
Kochava
Singular
Pelajari lebih lanjut artikel Tentang melacak konversi aplikasi dengan Partner Atribusi Aplikasi.
Cara mengaktifkan DDL di GA4F SDK
Anda dapat mengaktifkan DDL di GA4F SDK menggunakan Android versi 17.2.0+ atau versi yang lebih baru dengan mengikuti langkah-langkah berikut:
Langkah-langkah untuk mengaktifkan DDL di GA4F SDK
1. Mengonfigurasi aplikasi untuk menggunakan Google Analytics for Firebase
Di build.gradle aplikasi, hapus semua dependensi di firebase-core
. Kemudian, tambahkan atau perbarui dependensi di firebase-analytics
versi 17.2.0+. Contoh di bawah ini menggunakan versi SDK yang lebih baru.
dependensi {
...
implementation 'com.google.firebase:firebase-analytics:21.0.0'
...
}
2. Mengaktifkan fitur di aplikasi
Ubah manifes aplikasi dengan menambahkan tag metadata berikut ke tag aplikasi Anda.
<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">
<!-- Nilai yang akan ditambahkan untuk mengaktifkan deep link yang ditangguhkan -->
<meta-data android:name="google_analytics_deferred_deep_link_enabled" android:value="true"/>
<activity
android:name=".MainActivity" >
</activity>
</application>
</manifest>
Saat diaktifkan, GA4F akan mengambil deep link yang telah dikonfigurasi, saat aplikasi dimulai, untuk kampanye terkait yang telah Anda konfigurasikan.
3. Melakukan pengambilan deep link
Siapkan pemroses perubahan SharedPreferences dalam class aktivitas peluncuran utama Anda. Penyiapan ini akan dipicu saat DDL tersedia. Jika Anda mendaftarkan pemroses nanti di siklus proses aplikasi, deep link mungkin telah diambil. Dalam hal ini, pemroses tidak akan dipicu, dan Anda dapat langsung mencari nilai deep link dengan membaca SharedPreferences.
GA4F menyimpan deep link di file SharedPreferences google.analytics.deferred.deeplink.prefs
dengan kunci deeplink
. Di file SharedPreferences yang sama, GA4F juga menyimpan stempel waktu klik iklan dengan kunci timestamp
. Perhatikan bahwa format stempel waktu adalah mikrodetik (milidetik diikuti dengan titik dan mikrodetik) dan disimpan di SharedPreferences menggunakan Long jika jenisnya adalah Double. Gunakan Double.longBitsToDouble(...) untuk mengurai nilai sebenarnya.
Contoh:
/**
* Aktivitas peluncuran utama aplikasi.
*/
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. Mempersiapkan data untuk pengujian diagnostik
Untuk memvalidasi penerapan Anda, dapatkan AdID untuk perangkat yang ingin Anda uji. Anda dapat menggunakan perintah berikut untuk menetapkan DDL yang akan diterima aplikasi.
"googleadservices.com/pagead/conversion/app/deeplink?&rdid=<<adid perangkat Anda>>&id_type=adid&bundleid=<<paket aplikasi Anda>>&deeplink=<<deeplink yang ingin Anda terima>>&ddl_test=1"
Untuk memeriksa apakah deep link telah ditetapkan dengan benar, Anda dapat menggunakan permintaan ini untuk memverifikasi respons.
Deep link pengujian ini akan berakhir setelah 24 jam. Ulangi langkah ini jika deep link pengujian sudah tidak berlaku.
5. Mengaktifkan mode pengujian untuk mengambil DDL pengujian
Aktifkan mode pengujian DDL untuk memulai pengujian di perangkat Anda.
adb shell setprop debug.deferred.deeplink <<paket aplikasi Anda>>
Berikutnya, aktifkan mode debug di perangkat Anda. Mulai gunakan aplikasi Anda dan, di Logcat, periksa apakah pesan log menampilkan gmp_version
setidaknya 18200
. Menelusuri kata kunci deferred
akan memfilter semua pesan debug dari Google Analytics for Firebase yang berkaitan dengan fungsi tersebut.
Contoh:
D/FA: Deferred Deep Link feature enabled.
FA-SVC: Uploading data. app, uncompressed size, data: <<paket aplikasi Anda>>,
…
gmp_version: 18200