建立深層連結後,您必須先在評估 SDK 中啟用,才能在應用程式廣告活動中使用這些連結。
本文將說明如何在支援的第三方應用程式歸因合作夥伴 (AAP) 或最新版 Google Analytics for Firebase (GA4F) SDK 中啟用延遲深層連結 (DDL)。瞭解如何使用第三方工具追蹤行動應用程式轉換。
事前準備
如要在支援的 AAP 中啟用延遲深層連結,您需要具備有效的深層連結,且該深層連結已妥善納入附加的動態饋給中,或是做為廣告群組延遲深層連結提交。
操作說明
如何在支援的 AAP 中啟用 DDL
Google 目前支援延遲深層連結的第三方 AAP 如下:
- Adjust
- AppsFlyer
- Branch
- Kochava
- Singular
如要在所選 AAP 中啟用延遲深層連結,請按照下列步驟操作。
Adjust
AppsFlyer
- 在 AppsFlyer 中,依序點選「Configuration」>「Integrated Partners」,然後選取「Google Ads (AdWords)」。
- 在「Integration」分頁中,啟用「Deferred deep linking with Google feeds」。
- 按一下「Save integration」(儲存整合)。
Branch
Kochava
Singular
如要進一步瞭解如何透過應用程式歸因合作夥伴追蹤應用程式轉換,請參閱本文。
如何在 GA4F SDK 中啟用 DDL
您可以按照下列步驟,使用 Android 17.2.0 以上版本,在 GA4F SDK 中啟用 DDL:
在 GA4F SDK 中啟用 DDL 的步驟
1. 將應用程式設為使用 Google Analytics for Firebase
在應用程式的 build.gradle 中,移除 firebase-core
的所有依附元件。接著,新增或更新 firebase-analytics
17.2.0 以上版本的依附元件。以下範例使用新版 SDK。
dependencies {
...
implementation 'com.google.firebase:firebase-analytics:21.0.0'
...
}
2. 在應用程式中啟用這項功能
修改應用程式資訊清單,方法是在應用程式代碼中加入下列中繼資料標記。
<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">
<!-- 為啟用延遲深層連結而加入的值 -->
<meta-data android:name="google_analytics_deferred_deep_link_enabled" android:value="true"/>
<activity
android:name=".MainActivity" >
</activity>
</application>
</manifest>
啟用後,GA4F 將在應用程式開啟時,為已設定的相應廣告活動擷取您設定的深層連結。
3. 擷取深層連結
在主要啟動活動類別中設定 SharedPreferences 變更事件監聽器,有可用的 DDL 時就會觸發。如果您之後才在應用程式生命週期中註冊事件監聽器,系統可能已擷取深層連結。在這種情況下,事件監聽器將不會觸發,而您可立即藉由讀取 SharedPreferences 來查看深層連結的值。
GA4F 會將深層連結儲存在 SharedPreferences 檔案「google.analytics.deferred.deeplink.prefs
」中,使用的鍵為 deeplink
。GA4F 也會在同一個 SharedPreferences 檔案中,使用 timestamp
鍵儲存廣告點擊時間戳記。請注意,時間戳記使用微秒格式 (也就是毫秒後面加上一點和微秒),如果類型為 Double,就會使用 Long 儲存在 SharedPreferences 檔案中。使用 Double.longBitsToDouble(...) 剖析實際值。
範例:
/**
* 應用程式的主要啟動活動。
*/
public class MainActivity extends AppCompatActivity {
私人 SharedPreferences preferences;
私人 SharedPreferences.OnSharedPreferenceChangeListener deepLinkListener;
@Override
protected void onStart() {
超級.onStart();
preferences.registerOnSharedPreferenceChangeListener(deepLinkListener);
}
@Override
protected void onStop() {
超級.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. 準備診斷測試的資料
若要驗證導入狀態,請取得想測試裝置的廣告 ID。您可以使用下列指令,設定應用程式將接收的 DDL。
"www.googleadservices.com/pagead/conversion/app/deeplink?&rdid=<<裝置廣告 ID>>&id_type=adid&bundleid=<<應用程式套件>>&deeplink=<<要接收的深層連結>>&ddl_test=1"
如要檢查深層連結是否正確設定,您可以使用這項要求來驗證回應。
此測試深層連結會在 24 小時後失效。如果測試深層連結過期,請重複此步驟。
5. 啟用測試模式以擷取測試 DDL
啟用 DDL 測試模式,以便開始在裝置上進行測試。
adb shell setprop debug.deferred.deeplink <<應用程式套件>>
接下來,請在裝置上啟用偵錯模式。開始使用應用程式,並在 Logcat 中檢查記錄訊息是否顯示至少 18200
的 gmp_version
。搜尋關鍵字 deferred
,即可篩選出所有與該項功能相關的 Google Analytics for Firebase 偵錯訊息。
範例:
D/FA:已啟用延遲深層連結功能。
FA-SVC:正在上傳資料。應用程式、未壓縮大小、資料:<<應用程式 套件>>,
…
gmp_version: 18200