App Center Analytics (Xamarin)

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

如果您還沒有在應用程式中設定 SDK,請遵循「 開始使用」 一節。

會話和裝置資訊

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

自訂事件

您可以追蹤您自己的自訂事件, 最多 可有20個屬性,以瞭解使用者與應用程式之間的互動。

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

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

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

Analytics.TrackEvent("Video clicked");

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

您可以在執行時間啟用和停用 App Center 分析。 如果您停用它,SDK 將不會收集應用程式的任何分析資訊。

Analytics.SetEnabledAsync(false);

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

Analytics.SetEnabledAsync(true);

您不需要等候此呼叫來進行其他 API 呼叫, (例如 IsEnabledAsync) 一致。

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

注意

只有在啟動之後,才必須使用這個方法 Analytics

檢查 App Center 分析是否已啟用

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

bool isEnabled = await Analytics.IsEnabledAsync();

注意

只有在啟動之後,才會使用這個方法 Analytics ,在開始之前,它一定會傳回 false

本機儲存體大小

根據預設,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 切換至行動) ,重試狀態會重設,並立即重試要求。