共用方式為


開始使用macOS

這很重要

Visual Studio App Center 於 2025 年 3 月 31 日淘汰,但分析和診斷功能除外,這些功能將持續支援到 2026 年 6 月 30 日。 瞭解更多資訊。

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

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

1.Prerequisites

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

  • macOS 專案需在 Xcode 13 或更新版本上設定,而且系統必須在 macOS 10.14.4 或更新版本上運行。
  • 您的目標是在macOS 10.13或更新版本上執行的裝置。
  • 您未使用任何其他提供當機報告功能的函式庫。

備註

App Center SDK 將會使用 6 月 SDK 版本 卸除 Xcode 10 的支援

App Center SDK 分析和當機可透過 XCFramework 或 SwiftPM 與 Mac Catalyst 相容。

App Center SDK 與 Apple Silicon 相容。

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

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

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

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

3.新增 App Center SDK 模組

App Center SDK for macOS 可以透過 CocoapodsCarthageSwift Package Manager 或手動將二進位檔新增至您的專案,輕鬆整合到您的應用程式。

備註

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

3.1 透過Cocoapods整合

  1. 將下列相依性新增至您的 podfile ,以將App Center Analytics和App Center當機納入您的應用程式。 這會提取下列架構: AppCenterAppCenterAnalyticsAppCenterCrashes。 相反地,您可以指定要在應用程式中使用的服務。 每個服務都有自己的子專案,而且全都依賴 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納入您的應用程式。 這會引入所有的框架。 然後,您只能連結您想要在應用程式中使用的架構。

    # 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 macOS。 這會擷取相依性到 Carthage/Checkouts 資料夾,然後建置每個架構。

  3. 開啟應用程式目標的 [ 一般 設定] 索引標籤。將 AppCenter.frameworkAppCenterAnalytics.frameworkAppCenterCrashes.framework 檔案從 Carthage/Build/macOS 資料夾拖放到 Xcode 的項目導覽器中。 需要 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 專案中整合已編譯二進位檔的步驟,以設定 macOS 應用程式的 App Center Analytics 和 App Center 當機。

備註

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

  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. 將 SDK 架構新增至 Xcode 中的專案:

    • 請確定 [項目導覽器] 為可見的 (⌘+1)。
    • 現在,將位於 Vendor 資料夾內的 AppCenter.frameworkAppCenterAnalytics.frameworkAppCenterCrashes.framework 從 Finder 拖放到 Xcode 的專案瀏覽器中。 需要 AppCenter.framework 才能啟動 SDK。 如果缺少其他模組將無法運作,您的應用程式將無法編譯。
    • 對話框將會出現,請確定已選取您的應用程式目標。 然後按一下 [ 完成]。

備註

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

既然您已在應用程式中整合架構,現在可以啟動 SDK 並使用 App Center 服務。

4.啟動 SDK

若要使用 App Center,您必須選擇您想使用的模組。 根據預設,不會啟動任何模組,而且您必須在啟動 SDK 時呼叫每個模組。 如果您要開發延伸模組,請參閱 延伸模組入門頁面

4.1 新增匯入語句

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

@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])

如果您有 Catalyst 應用程式,您可以同時傳遞 iOS 和 macOS 的應用程式秘密:

[MSACAppCenter start:@"ios={Your iOS App Secret};macos={Your macOS App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret:"ios={Your iOS App Secret};macos={Your macOS 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 分析與 App Center 當機。

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

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

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

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

4.4 新增沙盒化應用程式的因特網功能

如果您的應用程式使用應用程式沙箱,您必須設定允許連出 (用戶端) 連線的功能,讓應用程式能夠存取因特網。 Xcode 9 預設會啟用應用程式沙箱,但必須明確設定連出連線的功能。

在項目導覽器中選取您的專案,選取 [ 功能 ] 索引標籤,如果您的應用程式正在使用沙箱,請啟用連出連線。


太好了,您已準備好在 SDK 自動收集的門戶網站上視覺化分析數據和崩潰數據。

查看 App Center 分析檔App Center 當機檔 ,瞭解如何自定義和使用每個服務的進階功能。