App Center Analytics (Unity)

App Center 分析可協助您瞭解使用者行為和客戶參與度,以改善您的應用程式。 SDK 會自動捕獲會話計數和裝置屬性,例如模型、作業系統版本等等。您可以定義自己的自訂事件來測量對您而言重要的事項。 您可以在 App Center 入口網站中取得所有已取得的資訊,以分析資料。

如果您尚未在您的應用程式中設定 SDK,請依照 Unity 快速入門 一節中的指示進行。

注意

若要使用下面提供的 Api,您必須將下列 using 語句新增至您的檔案 .cs

using Microsoft.AppCenter.Unity.Analytics;

您也必須確定已在 App Center 遊戲物件的設定中選取 [ 流量分析 ]。

會話和裝置資訊

一旦您新增 App Center 分析並啟動 SDK,它將會自動追蹤會話和裝置屬性,例如作業系統版本、型號等,而不需要在您的應用程式中有任何額外的程式碼。

自訂事件

您可以使用最多20個屬性來追蹤您自己的自訂事件,以瞭解應用程式中發生的狀況、瞭解使用者動作,以及查看 App Center 入口網站中的匯總。

TrackEvent()您可以使用方法,以屬性追蹤您的事件。 您最多可以傳送200個不同的事件名稱。 每個事件名稱最多256個字元,且每個事件屬性名稱和值都有125個字元的上限。

Analytics.TrackEvent("Video clicked", new Dictionary<string, string> {
    { "Category", "Music" },
    { "FileName", "favorite.avi" }
});

事件的屬性是選擇性的-如果您只想要追蹤事件,請改用此範例:

Analytics.TrackEvent("Video clicked");

警告

Analytics.TrackEvent() 如果在腳本中的方法之前呼叫,將會在不同平臺之間的行為不一致 Awake() AppCenterBehavior.cs 。 為了安全起見,您應該只依賴在應用程式中的第一個場景喚醒所有腳本之後傳送的事件 MonoBehaviour 。 若要搭配的初始化來追蹤事件 MonoBehavour ,請考慮將 API 新增至腳本的方法, Start() 而不是 Awake()

在執行時間啟用或停用 App Center 分析

您可以在執行時間啟用和停用 App Center 分析。 如果您停用它,SDK 將會停止收集應用程式的分析資訊。 若要停用分析,請使用下列 false 以參數形式傳遞的 API。

Analytics.SetEnabledAsync(false);

若要再次啟用 App Center 分析,請使用相同的 API,但以 true 參數形式傳遞。

Analytics.SetEnabledAsync(true);

狀態會保存在應用程式啟動之間的裝置儲存區中。

此 API 是非同步,您可以在我們的 App Center 非同步 api 指南中閱讀更多相關資訊。

檢查 App Center 分析是否已啟用

您也可以檢查 App Center 分析是否已啟用。

bool isEnabled = await Analytics.IsEnabledAsync();

事件優先順序和持續性

您可以追蹤重要性高於其他事件的商務關鍵事件。

開發人員可以將事件的持續性設定為 API 中的 一般 (Flags.PersistenceNormal) 或 api) 中的 重要 (Flags.PersistenceCritical

您可以使用下列 API 來追蹤事件的 重要性

Analytics.TrackEvent("eventName", Flags.PersistenceCritical);

如果您使用的是屬性:

Analytics.TrackEvent("eventName", new Dictionary<string, string> {
    { "Category", "Music" },
    { "FileName", "favorite.avi" }
}, Flags.PersistenceCritical);

暫停和繼續傳送記錄

當應用程式需要控制網路頻寬以滿足更多商務關鍵需求時,暫停事件傳輸可能會很有用。 您可以暫停將記錄傳送至 App Center 後端。 暫停時,仍可追蹤和儲存事件,但不會立即傳送。 您的應用程式在暫停時所追蹤的任何事件,只會在您呼叫之後傳送 Analytics.Resume

Analytics.Pause();
Analytics.Resume();

此 API 是非同步,您可以在我們的 App Center 非同步 api 指南中閱讀更多相關資訊。

本機儲存體大小

根據預設,SDK 會在儲存體中儲存多達10MB 的記錄。

沒有網際網路存取

如果沒有任何網路連線,SDK 會在本機儲存體中最多儲存10MB 的記錄。 一旦儲存體已滿,SDK 就會開始捨棄舊的記錄檔,以騰出空間給新的記錄。 一旦裝置取得網際網路的存取權之後,SDK 將會在50批次或每3秒之後傳送記錄。

批次處理事件記錄檔

App Center SDK 會以50批次上傳記錄,如果 SDK 沒有要傳送的50記錄,它仍會在3秒後傳送記錄。 最多可以平行傳送3個批次。

重試和反向的邏輯

App Center SDK 支援在可復原的網路錯誤時重試。 以下是重試邏輯:

  • 每個要求最多3次嘗試。
  • 每個要求都有自己的重試狀態電腦。
  • 所有傳輸通道都會停用 (直到下一個應用程式處理常式) 1 個要求耗盡所有重試為止。

反向邏輯

  • 50% 隨機載入,第1次重試介於5到10s 之間,第二次在2.5 到5分鐘之間重試,最後一個嘗試介於10到20分鐘之間。
  • 如果網路在 (或從 wi-fi 切換至行動) ,重試狀態會重設,並立即重試要求。