開始使用 Apple 平台的 Performance Monitoring

事前準備

如果還沒試過 將 Firebase 新增至 Apple 專案

步驟 1:將 Performance Monitoring 新增至應用程式

新增 Performance Monitoring SDK 後,Firebase 就會自動開始收集 有關應用程式的畫面轉譯資料 與應用程式的生命週期相關 (例如 應用程式開始時間),以及 HTTP/S 網路要求的資料。

使用 Swift Package Manager 安裝及管理 Firebase 依附元件。

  1. 在 Xcode 中保持開啟應用程式專案,然後前往「檔案」檔案 >新增套件
  2. 在系統提示時,新增 Firebase Apple 平台 SDK 存放區:
  3.   https://github.com/firebase/firebase-ios-sdk.git
    敬上
  4. 選擇 Performance Monitoring 程式庫。
  5. 在目標建構設定的「Other Linker Flags」部分中新增 -ObjC 標記。
  6. 完成後,Xcode 會自動開始解析並下載 複製到背景依附元件

接下來,設定 Firebase 模組:

  1. FirebaseCore 模組匯入至 UIApplicationDelegate和任何其他 應用程式委派所用的 Firebase 模組。 例如,如要使用 Cloud FirestoreAuthentication

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. 設定 FirebaseApp敬上 共用執行個體 application(_:didFinishLaunchingWithOptions:) 方法:

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. 如果您使用 SwiftUI,則必須建立並附加應用程式委派 透過 UIApplicationDelegateAdaptorApp NSApplicationDelegateAdaptor。您也必須停用應用程式委派程式 swizzling。適用對象 詳情請參閱 SwiftUI 操作說明

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. 重新編譯應用程式。

,瞭解如何調查及移除這項存取權。

步驟 2:產生初始資料顯示的效能事件

成功將 SDK 加進您的 應用程式。如果您仍在本機開發,可與應用程式互動來產生 收集及處理初次資料收集和處理的事件

  1. 繼續使用模擬器或測試裝置開發應用程式。

  2. 在背景和前景之間切換應用程式,透過瀏覽各個畫面與應用程式互動,並/或觸發網路要求,產生事件。

  3. 前往「效能資訊主頁 Firebase 控制台。您應該會在幾分鐘內看到初步資料。

    如果沒看到初始資料,請查看疑難排解 提示

步驟 3(選用) 查看效能事件的記錄訊息

  1. 啟用偵錯記錄功能,如下所示:

    1. 在 Xcode (最低 v15.2) 中,選取 Product > 配置 >編輯配置
    2. 選取左選單中的「Run」(執行),然後選取「Arguments」分頁標籤。
    3. 在「Arguments Passed on Launch」部分中,新增 -FIRDebugEnabled
  2. 檢查記錄訊息,瞭解是否有任何錯誤訊息。

  3. Performance Monitoring 會以 Firebase/Performance 標記記錄訊息,方便您 篩選記錄訊息

  4. 查看以下類型的記錄,找出 Performance Monitoring 為 記錄效能事件:

    • Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. 按一下網址,即可在 Firebase 控制台查看資料。這項作業可能需要 資料更新。

如果您的應用程式未記錄效能事件,請參閱疑難排解 提示

步驟 4(選用) 為特定程式碼新增自訂監控功能

如要監控與應用程式中特定程式碼相關聯的成效資料,您可以檢測自訂程式碼追蹤記錄

透過自訂程式碼追蹤記錄,即可評估應用程式完成時間 是一組特定工作或一組工作,例如載入一組圖片或查詢 資料庫。自訂程式碼追蹤記錄的預設指標為持續時間,但 您也可以新增自訂指標,例如快取命中和記憶體警告。

您在程式碼中定義自訂程式碼追蹤記錄的開頭和結尾 ( 新增任何所需的自訂指標) 並使用 Performance Monitoring SDK 提供的 API。

請參閱新增特定程式碼的監控功能。 深入瞭解這些功能,以及如何將這些功能新增至應用程式。

步驟 5:部署應用程式,然後查看結果

使用 Xcode 模擬器和一或多項工具驗證 Performance Monitoring 後 測試裝置,您可以向使用者部署應用程式的更新版本。

您可以在 「效能」資訊主頁 Firebase 控制台。

已知問題

  • Performance Monitoring 與 GTMSQLite 有已知的相容性問題。建議您不要 搭配採用 GTMSQLite 的應用程式使用「Performance Monitoring」。
  • 呼叫 FirebaseApp.configure() 後,方法滑動可能會幹擾 Performance Monitoring SDK。
  • iOS 8.0-8.2 模擬器造成 Performance Monitoring 的已知問題 並擷取效能事件的資料這些問題在 iOS 8.3 模擬器中已修正 和後續版本。
  • 使用 NSURLSession 的 backgroundSessionConfiguration 建立連線 連線時間會超過預期。這些連線 獨立於處理程序之外,且時間會反映出處理中的回呼事件。

後續步驟