開始使用 Unity

重要

Visual Studio App Center 已排定於 2025 年 3 月 31 日淘汰。 雖然您可以繼續使用 Visual Studio App Center,直到它完全淘汰為止,但有數個建議您考慮移轉至的建議替代方案。

深入瞭解支持時程表和替代方案。

App Center SDK 使用模組化架構,因此您可以使用任何或所有服務。

讓我們開始使用並設定 App Center Unity SDK,以使用 App Center 分析和當機。 若要將App Center散發新增至您的應用程式,請參閱 App Center散發的檔

1.Prerequisites

開始之前,請確定您的專案已在 Unity 2018.1 或更新版本中設定。

App Center SDK for Unity 支援下列平臺:

  • iOS (9.0 或更新版本)
  • Android (5.0/API 21 或更新版本)
  • UWP (組建 16299 或更新版本)

注意

UWP 平臺不再支援 .NET 3.5 腳本運行時間版本和 .NET 腳本後端。

若要瞭解如何使用協同程式/回呼而非 async/await 後端 .NET 3.5 ,請參閱檔的 Unity SDK 一節中的異步 API

此外,App Center SDK for Unity 僅適用於 C#。

2.在 App Center 入口網站中建立您的應用程式,以取得應用程式秘密

如果您已在 App Center 入口網站中建立應用程式,您可以略過此步驟。

  1. 請前往 appcenter.ms
  2. 註冊或登入App Center。
  3. 單擊入口網站右上角的藍色按鈕,指出 [ 新增 ],然後從下拉功能表中選取 [ 新增應用程式 ]。
  4. 輸入應用程式的名稱和選擇性描述。
  5. 視您的專案而定,選取適當的OS和平臺,如上所述。
  6. 按下頁面右下角的 [ 新增應用程式 ] 按鈕。

建立應用程式之後,您可以在 App Center 入口網站的 [設定] 頁面上取得其應用程式密碼。 在 [ 設定 ] 頁面右上角,按兩下 三個垂直點 ,然後選取 Copy app secret 以取得您的應用程式密碼。

3.將 App Center SDK 新增至您的專案

3a 安裝擴充功能 編輯器

App Center SDK 會藉由將 Unity 套件匯入至您的專案來整合。 若要這樣做,請先安裝 App Center Unity 編輯器 Extensions 外掛程式。 透過 Unity 功能表開啟 編輯器 延伸模組:視窗 > App Center 編輯器 延伸模組,然後選取 [安裝 App Center > SDK]。

注意

在 Unity 2019.1.2f1 版和更新版本中,安裝期間可能會發生錯誤,例如 Coroutine continue failure。 這是已知的 Unity 問題,您應該忽略它。

3.1b 安裝個別套件

或者,每個個別 Unity 套件都可以下載並匯入。 它們位於 App Center Unity SDK GitHub 頁面上。 下載您想要使用的套件最新版本 (s) 。 其名稱的格式應該是 AppCenter{Analytics/Crashes/Distribute}-v{version}.unitypackage

3.2b 匯入套件

開啟您的 Unity 專案,然後按兩下您下載的套件。 彈出視窗應該會出現在您的 Unity 專案中,其中包含檔案清單。 選取 [ 匯入],SDK 將會新增至您的專案。 針對您下載的每個套件重複此步驟,並規劃在專案中使用。

4.啟用 SDK

4.1 建立空的遊戲物件

App Center 可作為您在遊戲啟動時附加至遊戲物件之場景中的元件。 流覽至此場景,並新增空的遊戲物件。 提供描述性名稱,例如 「App Center」。

4.2 附加 App Center 腳本

[專案] 視窗中,流覽至已新增至專案的 “AppCenter” 資料夾。 找出名為 AppCenterBehavior 的腳本,然後將它拖曳到 [ 階層 ] 視窗中新建立的遊戲物件。

注意

您不需要將 App Center 新增至您想要使用它的每個場景。 將它新增至第一個載入的場景已足夠。

4.3 設定 App Center 設定

按兩下這個新的 「App Center」物件,並將您的應用程式密碼新增至 [偵測器 ] 視窗中的對應欄位。 請務必同時針對您想要使用的每個 App Center 服務,核取 [使用 {service}] 方塊

App Center 腳本設定

警告

不建議在原始碼中內嵌您的應用程式密碼。

注意

如果您的項目不支援設定中列出的三個平臺之一,請將應用程式秘密欄位保留原樣;它不會有任何作用。 如果您的項目支援App Center不支援的平臺,API和設定將不會影響這些平臺。


好,您全都設定為將 SDK 自動收集的入口網站中分析與診斷 (當機和錯誤) 數據可視化。

查看 App Center AnalyticsApp Center 當機 的檔,瞭解如何同時使用這兩項服務更進階的功能。

若要瞭解如何開始使用應用程式內更新,請閱讀 App Center 散發檔。

5.僅限 Android (備份規則)

注意

以 Android 6.0 為目標的應用程式 (API 層級 23) 或更新版本會自動啟用自動備份。

注意

如果您已經有具有備份規則的自定義檔案,請切換至第三個步驟。

注意

如果您還沒有自己的 AndroidManifest.xml 檔案,請在 Assets/Plugins/Android 資料夾中建立它。 此指令清單會在建置時與預設 Unity 建立的指令清單合併。

如果您使用自動備份來避免取得裝置的不正確資訊,請遵循後續步驟:

5.1. 針對 Android 11 (API 層級 30) 或更低層級。

  1. Assets/Plugins/Android/res/xml 資料夾中建立 appcenter_backup_rule.xml 檔案。
  1. 開啟專案的 AndroidManifest.xml 檔案。 將 android:fullBackupContent 屬性新增至 <application> 專案。 它應該指向 appcenter_backup_rule.xml 資源檔。
android:fullBackupContent="@xml/appcenter_backup_rule"
  1. 將下列備份規則新增至 appcenter_backup_rule.xml 檔案:
<full-backup-content xmlns:tools="http://schemas.android.com/tools">
      <exclude domain="sharedpref" path="AppCenter.xml"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
      <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
      <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
  </full-backup-content>

5.2. 針對Android 12 (API 層級31) 或更高版本。

  1. Assets/Plugins/Android/res/xml 資料夾中建立 appcenter_backup_rule.xml 檔案。
  1. 開啟專案的 AndroidManifest.xml 檔案。 將 android:dataExtractionRules 屬性新增至 <application> 專案。 它應該指向 appcenter_backup_rule.xml 資源檔。
android:dataExtractionRules="@xml/appcenter_backup_rule"
  1. 將下列備份規則新增至 appcenter_backup_rule.xml 檔案:
<data-extraction-rules xmlns:tools="http://schemas.android.com/tools">
    <cloud-backup>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </cloud-backup>
    <device-transfer>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </device-transfer>
</data-extraction-rules>