開始使用 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 入口網站中建立應用程式,您可以略過此步驟。
- 請前往 appcenter.ms。
- 註冊或登入,並在入口網站右上角按一下藍色按鈕,指出 [ 新增 ],然後從下拉式功能表中選取 [ 新增應用程式 ]。
- 輸入應用程式的名稱和選擇性描述。
- 選取 tvOS 作為 OS 和 Objective-C/Swift 作為平臺。
- 按一下右下角的按鈕,指出 [新增應用程式]。
建立應用程式之後,您可以在 App Center 入口網站的 [設定] 頁面上取得其應用程式密碼。 在 [ 設定 ] 頁面右上角,按一下 三個垂直點 ,然後選取 Copy app secret
以取得您的應用程式密碼。
3.新增 App Center SDK 模組
App Center SDK for tvOS 可以透過 Cocoapods、 Carthage、 Swift 套件管理員 或手動將二進位檔新增至您的專案,整合至您的應用程式。
注意
4.0.0
在 App Center 的重大變更版本中引進。 遵循 移轉至 App Center SDK 4.0.0 和更新版本 一節,從舊版移轉 App Center。
3.1 透過 Cocoapods 整合
將下列相依性新增至您的
podfile
,以將 App Center Analytics 和 App Center 損毀納入您的應用程式。 這會提取下列架構: AppCenter、 AppCenterAnalytics和 AppCenterCrashes。 相反地,您可以指定您想要在應用程式中使用的服務。 每個服務都有自己的子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'
執行
pod install
以安裝新定義的 Pod,並開啟專案的.xcworkspace
。
現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。
3.2 透過 Carthage 整合
以下是如何使用 Carthage0.30 版或更新版本在 Xcode 專案中整合 App Center SDK 的步驟,這是建置相依性的分散式相依性管理員,並提供二進位架構。
將下列相依性新增至您的
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
執行
carthage update --platform tvOS
。 這會擷取相依性至 Carthage/Checkouts 資料夾,然後建置每個架構。開啟應用程式目標的 [ 一般 設定] 索引標籤。將 AppCenter.framework、 AppCenterAnalytics.framework和 AppCenterCrashes.framework 檔案從 Carthage/Build/tvOS 資料夾拖放到 Xcode 的 Project Navigator。 需要 AppCenter.framework才能啟動 SDK。 如果未將它新增至專案,其他模組將無法運作,而且您的應用程式不會編譯。
隨即會出現對話方塊,確定已檢查您的應用程式目標。 然後按一下 [ 完成]。
注意
如果您在建置階段中使用
carthage copy-frameworks
,則不應該在 App Center SDK 隨附為靜態架構時,將其新增至該處。
現在您已在應用程式中整合架構,接下來就可以啟動 SDK 並利用 App Center 服務。
3.3 透過 Swift 套件管理員整合
- 從 [Xcode] 功能表中,按一下 [ 檔案 > Swift 套件 > 新增套件相依性]。
- 在出現的對話方塊中,輸入存放庫 URL: https://github.com/microsoft/appcenter-sdk-apple.git 。
- 在 [版本] 中,選取 [下一個主要 專案],然後採用預設選項。
- 選擇 [ 套件產品 ] 資料行中所需的模組。
現在您已在應用程式中整合架構,接下來就可以啟動 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。 它們可以與一般架構整合的方式相同,如下所述。
下載以 zip 檔案的形式提供的 App Center SDK 架構。
將檔案解壓縮,您會看到名為 AppCenter-SDK-Apple 的資料夾,其中包含每個平臺資料夾上每個 App Center 服務的不同架構。 專案中需要呼叫
AppCenter
的架構,因為它包含不同模組之間共用的程式碼。[選擇性]建立協力廠商程式庫的子目錄。
- 最佳做法是,協力廠商程式庫通常位於子目錄內, (通常稱為 Vendor) ,因此,如果您沒有使用程式庫的子目錄組織專案,請立即建立 Vendor 子目錄。
- 在 Xcode 專案中建立名為 Vendor 的群組,以模擬磁片上的檔案結構。
在 Finder 中開啟解壓縮的 AppCenter-SDK-Apple 資料夾,並將資料夾複製到您想要位置的專案資料夾。 資料夾包含 App Center SDK 支援之其他平臺子資料夾中的架構,因此您可能需要刪除不需要的子資料夾。
在 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 服務,您應該:
- 使用應用程式密碼進行設定或啟動。
- 如果可以多次呼叫程式碼,請檢查 App Center 是否已設定。
- 在沒有應用程式密碼的情況下,啟動必要的服務 () 。
[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:withServices
start(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 Analytics 和 App Center 當機 的檔,瞭解如何自訂和使用這兩項服務的更進階功能。