開始使用 tvOS

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

讓我們開始在應用程式中設定 App Center tvOS SDK,以使用 App Center Analytics 和 App Center 當機。

1.Prerequisites

必須符合下列需求,才能使用 App Center SDK:

  • 您的 tvOS 是在 tvOS 11 版或更新版本 Xcode 13 或更新版本中設定。
  • 您不會使用任何其他提供當機報告功能的程式庫。

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

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

  1. 請前往 appcenter.ms
  2. 註冊或登入,並在入口網站右上角按一下藍色按鈕,指出 [ 新增 ],然後從下拉式功能表中選取 [ 新增應用程式 ]。
  3. 輸入應用程式的名稱和選擇性描述。
  4. 選取 tvOS 作為 OS 和 Objective-C/Swift 作為平臺。
  5. 按一下右下角的按鈕,指出 [新增應用程式]。

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

3.新增 App Center SDK 模組

App Center SDK for tvOS 可以透過 CocoapodsCarthageSwift 套件管理員 或手動將二進位檔新增至您的專案,整合至您的應用程式。

注意

4.0.0在 App Center 的重大變更版本中引進。 遵循 移轉至 App Center SDK 4.0.0 和更新版本 一節,從舊版移轉 App Center。

3.1 透過 Cocoapods 整合

  1. 將下列相依性新增至您的 podfile ,以將 App Center Analytics 和 App Center 損毀納入您的應用程式。 這會提取下列架構: AppCenterAppCenterAnalyticsAppCenterCrashes。 相反地,您可以指定您想要在應用程式中使用的服務。 每個服務都有自己的子spec,而且全都依賴 AppCenter 。 它會自動提取。

     # Use the following line to use App Center Analytics and Crashes.
     pod 'AppCenter'
    
     # Use the following lines if you want to specify which service you want to use.
     pod 'AppCenter/Analytics'
     pod 'AppCenter/Crashes'
    
  2. 執行 pod install 以安裝新定義的 Pod,並開啟專案的 .xcworkspace

現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。

3.2 透過 Carthage 整合

以下是如何使用 Carthage0.30 版或更新版本在 Xcode 專案中整合 App Center SDK 的步驟,這是建置相依性的分散式相依性管理員,並提供二進位架構。

  1. 將下列相依性新增至您的 Cartfile ,以將 App Center Analytics 和 App Center 損毀納入您的應用程式。

    # Use the following line to get the latest version of App Center
    github "microsoft/appcenter-sdk-apple"
    
    # Use the following line to get the specific version of App Center
    github "microsoft/appcenter-sdk-apple" ~> X.X.X
    
  2. 執行 carthage update --platform tvOS。 這會擷取相依性至 Carthage/Checkouts 資料夾,然後建置每個架構。

  3. 開啟應用程式目標的 [ 一般 設定] 索引標籤。將 AppCenter.frameworkAppCenterAnalytics.frameworkAppCenterCrashes.framework 檔案從 Carthage/Build/tvOS 資料夾拖放到 Xcode 的 Project Navigator。 需要 AppCenter.framework才能啟動 SDK。 如果未將它新增至專案,其他模組將無法運作,而且您的應用程式不會編譯。

  4. 隨即會出現對話方塊,確定已檢查您的應用程式目標。 然後按一下 [ 完成]。

    注意

    如果您在建置階段中使用 carthage copy-frameworks ,則不應該在 App Center SDK 隨附為靜態架構時,將其新增至該處。

現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。

3.3 透過 Swift 套件管理員整合

  1. 從 [Xcode] 功能表中,按一下 [ 檔案 > Swift 套件 > 新增套件相依性]。
  2. 在出現的對話方塊中,輸入存放庫 URL: https://github.com/microsoft/appcenter-sdk-apple.git
  3. [版本] 中,選取 [下一個主要 專案],然後採用預設選項。
  4. 選擇 [ 套件產品 ] 資料行中所需的模組。

現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。

注意

如果您要透過 SwiftPM 整合 App Center,並想要在應用程式的延伸模組目標中使用它,請確定您在設定中提供 DISABLE_DIAMOND_PROBLEM_DIAGNOSTIC=YES 。 這是將模組連結至多個目標時,避免 SwiftPM 限制的必要條件。

3.4 將二進位檔複製到您的專案來整合

以下是如何在 Xcode 專案中整合已編譯二進位檔的步驟,以為您的 tvOS 應用程式設定 App Center Analytics 和 App Center 當機。

注意

App Center SDK 支援使用 XCframework 。 如果您想要將 XCframeworks 整合到專案中,請從發行頁面下載AppCenter-SDK-Apple-XCFramework.zip,並將其解壓縮。 產生的資料夾內容並非平臺特定,而是包含每個模組的 XCframeworks。 它們可以與一般架構整合的方式相同,如下所述。

  1. 下載以 zip 檔案的形式提供的 App Center SDK 架構。

  2. 將檔案解壓縮,您會看到名為 AppCenter-SDK-Apple 的資料夾,其中包含每個平臺資料夾上每個 App Center 服務的不同架構。 專案中需要呼叫 AppCenter 的架構,因為它包含不同模組之間共用的程式碼。

  3. [選擇性]建立協力廠商程式庫的子目錄。

    • 最佳做法是,協力廠商程式庫通常位於子目錄內, (通常稱為 Vendor) ,因此,如果您沒有使用程式庫的子目錄組織專案,請立即建立 Vendor 子目錄。
    • 在 Xcode 專案中建立名為 Vendor 的群組,以模擬磁片上的檔案結構。
  4. 在 Finder 中開啟解壓縮的 AppCenter-SDK-Apple 資料夾,並將資料夾複製到您想要位置的專案資料夾。 資料夾包含 App Center SDK 支援之其他平臺子資料夾中的架構,因此您可能需要刪除不需要的子資料夾。

  5. 在 Xcode 中將 SDK 架構新增至專案:

    • 請確定專案導覽器可見 (⌘+1) 。
    • 現在,從 Finder 將AppCenter.framework、AppCenterAnalytics.framework 和 AppCenterCrashes.framework拖放到 Xcode 的專案導覽器 (Vendor 資料夾內的AppCenter.framework) 。 需要 AppCenter.framework 才能啟動 SDK,請確定它已新增至您的專案,否則其他模組將無法運作,且您的應用程式不會編譯。
    • 隨即會出現對話方塊,確定已檢查您的應用程式目標。 然後按一下 [ 完成]。

注意

SDK 二進位檔未封裝在 tvOS 架構慣例之後。 原因是 App Center SDK for tvOS 不是傳統架構,而是靜態架構。 您必須將其連結為靜態架構:請確定您未內嵌二進位檔,且不會將它們包含在「複製套件組合資源」建置階段。

現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。

4.啟動 SDK

若要使用 App Center,您必須加入宣告您想要使用的模組 () 。 根據預設,不會啟動任何模組,而且您必須在啟動 SDK 時明確呼叫每個模組。

4.1 新增匯入語句

開啟專案的 AppDelegate 檔案,並新增下列 import 語句:

@import AppCenter;
@import AppCenterAnalytics;
@import AppCenterCrashes;
import AppCenter
import AppCenterAnalytics
import AppCenterCrashes

4.2 新增 start:withServices: 方法

在應用程式的 didFinishLaunchingWithOptions 委派方法中插入下列這一行:

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self])

警告

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

如果您需要個別啟動 App Center 服務,您應該:

  1. 使用應用程式密碼進行設定或啟動。
  2. 如果可以多次呼叫程式碼,請檢查 App Center 是否已設定。
  3. 在沒有應用程式密碼的情況下,啟動必要的服務 () 。
[MSACAppCenter configureWithAppSecret:@"{Your App Secret}"];
if ([MSACAppCenter isConfigured]) {
   [MSACAppCenter startService:[MSACAnalytics class]];
   [MSACAppCenter startService:[MSACCrashes class]];
}
AppCenter.configure(withAppSecret: "{Your App Secret}")
if AppCenter.isConfigured {
    AppCenter.startService(Analytics.self)
    AppCenter.startService(Crashes.self)
}

4.3 以您的應用程式秘密取代預留位置

請務必以應用程式的實際值取代 {Your App Secret} 文字。 您可以在 App Center 入口網站的[消費者入門] 頁面或 [設定] 頁面上找到應用程式密碼。

消費者入門頁面包含上述程式碼範例,其中含有您的應用程式密碼,您可以複製並貼上整個範例。

上述範例示範如何使用 start:withServicesstart(withAppSecret:services:) (for Swift) 方法,並同時包含 App Center Analytics 和 App Center 當機。

如果您不想使用這兩個服務之一,請從上述方法呼叫中移除對應的參數。

除非您在 start 方法中將每個模組指定為參數,否則您無法使用該 App Center 服務。 此外, start:withServices Swift) API 的 (start(withAppSecret:services:) 只能在您應用程式的生命週期中使用一次,所有其他呼叫都會將警告記錄到主控台,而且只有第一次呼叫中包含的模組可供使用。

例如 - 如果您想要上線至 App Center Analytics,您應該修改 start:withServices Swift) API 呼叫的 (start(withAppSecret:services:) ,如下所示:

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self])

好,您全都已設定為在 SDK 自動收集的入口網站上視覺化分析和當機資料。

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