Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

iOS 性能監控入門

在你開始之前

如果你還沒有,添加火力地堡到iOS項目

第1步:性能監控添加到您的應用

您添加性能監視SDK後,火力地堡自動啟動對於應用的收集數據的畫面呈現,關係到你的應用程序的生命週期(如數據的應用程序啟動時間),和數據HTTP / S的網絡請求

  1. 打開你的項目創建的podfile(或運行pod init創建一個),然後添加目標區間內以下行:

    pod 'Firebase/Performance'
  2. 在您的 podfile 目錄中,運行以下命令安裝性能監控 SDK:

    pod install
  3. 打開.xcworkspace使用Xcode的文件。

  4. 導入火力地堡模塊在UIApplicationDelegate

    迅速

    import Firebase

    目標-C

    @import Firebase;
  5. 配置一個FirebaseApp共享實例,通常在你的應用程序的application:didFinishLaunchingWithOptions:方法:

    迅速

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

    目標-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  6. 重新編譯您的應用程序。

步驟2:為初始數據顯示生成性能事件

當您成功地將 SDK 添加到您的應用程序時,Firebase 開始處理事件。如果您仍在本地開發,請與您的應用程序交互以生成用於初始數據收集和處理的事件。

  1. 繼續使用模擬器或測試設備開發您的應用程序。

  2. 通過在後台和前台之間多次切換您的應用程序、通過跨屏幕導航和/或觸發網絡請求與您的應用程序交互來生成事件。

  3. 轉至性能儀表板的火力地堡控制台。您應該會在幾分鐘內看到初始數據顯示。

    如果您沒有看到您的初始數據顯示,查看故障排除提示

第3步:對性能事件(可選)查看日誌信息

  1. 啟用調試日誌記錄,如下所示:

    1. 在Xcode(最小系統用戶手冊),選擇產品>方案>編輯方案
    2. 從左邊的菜單中選擇運行,然後選擇參數選項卡。
    3. 傳承啟動部分的參數,添加-FIRDebugEnabled
  2. 檢查您的日誌消息是否有任何錯誤消息。

  3. 性能監視標籤的日誌信息與Firebase/Performance ,讓您可以過濾日誌信息。

  4. 檢查以下類型的日誌,這些日誌表明性能監控正在記錄性能事件:

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. 單擊 URL 以在 Firebase 控制台中查看您的數據。數據在儀表板中更新可能需要一些時間。

如果您的應用不記錄性能事件,查看故障排除提示

第4步:(可選)添加自定義的監視特定代碼

要監視特定代碼在您的應用程序相關聯,可以儀器性能數據自定義代碼的痕跡

使用自定義代碼跟踪,您可以測量應用完成特定任務或任務集所需的時間,例如加載一組圖像或查詢您的數據庫。自定義代碼跟踪的默認指標是其持續時間,但您也可以添加自定義指標,例如緩存命中和內存警告。

在您的代碼中,您可以使用性能監控 SDK 提供的 API 定義自定義代碼跟踪的開始和結束(並添加任何所需的自定義指標)。

訪問添加監視特定代碼,以了解更多有關這些功能,以及如何將它們添加到您的應用程序。

第5步:部署應用程序,然後查看結果

在使用 Xcode 模擬器和一台或多台測試設備驗證性能監控後,您可以將應用程序的更新版本部署給您的用戶。

您可以監視性能數據的性能儀表板的火力地堡控制台。

已知的問題

  • 性能監控與 GTMSQLite 存在已知的兼容性問題。我們建議不要對使用 GTMSQLite 的應用程序使用性能監控。
  • 打完電話後法混寫FirebaseApp.configure()可能與性能監測SDK干擾。
  • iOS 8.0-8.2 模擬器的已知問題阻止性能監控捕獲性能事件。這些問題已在 iOS 8.3 Simulator 及更高版本中修復。
  • 連接使用NSURLSession的建立backgroundSessionConfiguration將表現出比預期的連接時間更長。這些連接在進程外執行,時間反映進程內回調事件。

下一步