

適用於 Xamarin 的 AWS Mobile SDK 現在已包含在 中 適用於 .NET 的 AWS SDK。本指南參考 Mobile SDK for Xamarin 的封存版本。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Amazon Mobile Analytics 追蹤應用程式用量資料
<a name="getting-started-analytics"></a>

Amazon Mobile Analytics 可讓您測量應用程式用量和應用程式收入。透過追蹤關鍵趨勢，例如新使用者與傳回使用者、應用程式收入、使用者保留和自訂應用程式內行為事件，您可以做出資料驅動型決策，以提高應用程式的參與度和獲利。

以下教學課程說明如何將 Mobile Analytics 與您的應用程式整合。

## 專案設定
<a name="project-setup"></a>

### 先決條件
<a name="prerequisites"></a>

開始本教學課程之前，您必須完成[設定適用於 .NET 和 Xamarin 的 AWS Mobile SDK](setup.md) 上的所有說明。

### 在 Mobile Analytics 主控台中建立應用程式
<a name="create-an-app-in-the-mobile-analytics-console"></a>

前往 [Amazon Mobile Analytics 主控台](https://aws.amazon.com/mobileanalytics/)並建立應用程式。請記下 `appId`值，因為稍後會需要它。當您在 Mobile Analytics 主控台中建立應用程式時，您需要指定身分集區 ID。如需建立身分集區的指示，請參閱[設定適用於 .NET 和 Xamarin 的 AWS Mobile SDK](setup.md)。

若要進一步了解如何在 主控台中運作，請參閱 [Amazon Mobile Analytics 使用者指南](https://docs.aws.amazon.com/mobileanalytics/latest/ug/)。

### 設定 Mobile Analytics 的許可
<a name="set-permissions-for-mobile-analytics"></a>

與您在設定期間建立的角色相關聯的預設政策，會授予應用程式對 Mobile Analytics 的存取權。無需進一步設定。

### 將適用於 Mobile Analytics 的 NuGet 套件新增至您的專案
<a name="add-nuget-package-for-mobile-analytics-to-your-project"></a>

請遵循[設定適用於 .NET 和 Xamarin 的 AWS Mobile SDK](setup.md) 中的步驟 4，將 Mobile Analytics NuGet 套件新增至您的專案。

### 設定 Mobile Analytics 設定
<a name="configure-mobile-analytics-settings"></a>

Mobile Analytics 定義可在 awsconfig.xml 檔案中設定的一些設定：

```
var config = new MobileAnalyticsManagerConfig();
config.AllowUseDataNetwork = true;
config.DBWarningThreshold = 0.9f;
config.MaxDBSize = 5242880;
config.MaxRequestSize = 102400;
config.SessionTimeout = 5;
```
+ AllowUseDataNetwork - 指定工作階段事件是否在資料網路上傳送的布林值。
+ DBWarningThreshold - 這是資料庫大小的限制，一旦達到此限制，就會產生警告日誌。
+ MaxDBSize - 這是 SQLIte 資料庫的大小。當資料庫達到大小上限時，任何其他事件都會遭到捨棄。
+ MaxRequestSize - 這是應該在 HTTP 請求中傳輸至行動分析服務的位元組請求大小上限。
+ SessionTimeout - 這是應用程式進入背景以及工作階段可以終止的時間間隔。

上面顯示的設定是每個組態項目的預設值。

## 初始化 MobileAnalyticsManager
<a name="initialize-mobileanalyticsmanager"></a>

若要初始化 MobileAnalyticsManager，請在 上呼叫 GetOrCreateInstance`MobileAnalyticsManager`，並傳入您的 AWS 登入資料、您的區域、您的 Mobile Analytics 應用程式 ID 和您的選用組態物件：

```
var manager = MobileAnalyticsManager.GetOrCreateInstance(
  "APP_ID",
  "Credentials",
  "RegionEndPoint",
  config
);
```

## 追蹤工作階段事件
<a name="track-session-events"></a>

### Xamarin Android
<a name="xamarin-android"></a>

覆寫活動的 `OnPause()`和 `OnResume()`方法來記錄工作階段事件。

```
protected override void OnResume()
{
    manager.ResumeSession();
    base.OnResume();
}

protected override void OnPause()
{
    manager.PauseSession();
    base.OnPause();
}
```

這需要針對應用程式中的每個活動實作。

### Xamarin iOS
<a name="xamarin-ios"></a>

在您的 AppDelegate.cs:

```
public override void DidEnterBackground(UIApplication application)
{
    manager.PauseSession();
}

public override void WillEnterForeground(UIApplication application)
{
    manager.ResumeSession();
}
```

如需 Mobile Analytics 的詳細資訊，請參閱 [Amazon Mobile Analytics](analytics.md)。