分派 - Android SDK v2 (舊版)

本文說明如何使用 Google Analytics (分析) SDK v2 管理將資料分派至 Google Analytics (分析)。

總覽

在 Android 專用 Google Analytics (分析) SDK 中,畫面瀏覽或事件等收集到的資料會先儲存在本機的佇列中,然後才傳送至 Google Analytics (分析) 伺服器。這些資料 (稱為「命中」) 從 SDK 傳送至 Google Analytics (分析) 的程序稱為「調度」。

調度工具是行動收集程式庫的獨特功能,旨在減輕不穩定網路存取和電池續航力有限的挑戰。

分派分為兩種類型:

  • 定期調度 - 在您透過程式或 analytics.xml 檔案中指定週期性間隔,自動分派命中資料。
  • 手動調度 - 手動分派命中,讓系統在方便時 (例如目前已有 HTTP 連線的情況) 傳送資料。

在第 2 版 SDK 的主要 UI 執行緒中,兩種類型的分派作業都會發生

本文的其餘部分會進一步說明各種調度類型,以及如何在應用程式中實作。

定期調度

應用程式收集 Google Analytics (分析) 資料時,系統會將資料加入佇列,並定期傳送至 Google Analytics (分析)。當應用程式在前景或背景執行時,可能會發生定期調度。

預設的調度期間為 30 分鐘。您可以在 analytics.xml 檔案中使用 ga_dispatchPeriod 參數,或是呼叫 setDispatchPeriod(int dispatchPeriodInSeconds),以以秒為單位提供自己的間隔,如以下範例所示:

analytics.xml 檔案中:

<integer name="ga_dispatchPeriod">60</integer>

透過程式輔助方式:

GAServiceManager.getInstance().setDispatchPeriod(60);

設定負值後,系統會停用定期調度功能;如果您要將任何資料傳送至 Google Analytics (分析),就必須使用手動調度。另一方面,如果將值設為 0,則會在有網路連線時立即傳送每個命中。

派出所有命中後,定期調度功能會進入省電模式,直到發出其他傳送呼叫為止。

如果使用者在尚未分派的命中資料的情況下遺失網路存取權或關閉應用程式,則這些命中資料會保留在本機儲存空間中。系統會在您下次執行應用程式並呼叫調度器時,分派這些錯誤。

手動調度

除了依賴定期調度以外,有時您可能也需要手動調度命中資料。舉例來說,您可以將分派作業與應用程式發出的其他 HTTP 要求一併整合,以降低負擔。

您可以使用 GAServiceManager 例項來手動分派命中資料:

GAServiceManager.getInstance().dispatch();