Trước khi bắt đầu
Nếu bạn chưa thực hiện, hãy thêm Firebase vào dự án Apple.
Bước 1: Thêm Performance Monitoring vào ứng dụng
Sau khi bạn thêm SDK Performance Monitoring, Firebase sẽ tự động bắt đầu thu thập dữ liệu cho hoạt động kết xuất màn hình của ứng dụng, dữ liệu liên quan đến vòng đời của ứng dụng (chẳng hạn như thời gian bắt đầu ứng dụng) và dữ liệu cho yêu cầu mạng HTTP/S.
Sử dụng Trình quản lý gói Swift để cài đặt và quản lý các phần phụ thuộc Firebase.
- Trong Xcode, khi dự án ứng dụng đang mở, hãy chuyển đến File > Add Packages (Tệp > Thêm gói).
- Khi được nhắc, hãy thêm kho lưu trữ SDK của các nền tảng Apple Firebase:
- Chọn thư viện Performance Monitoring.
- Thêm cờ
-ObjC
vào phần Other Linker Flags (Cờ trình liên kết khác) trong phần cài đặt bản dựng của mục tiêu. - Khi hoàn tất, Xcode sẽ tự động bắt đầu phân giải và tải các phần phụ thuộc xuống ở chế độ nền.
https://github.com/firebase/firebase-ios-sdk.git
Tiếp theo, hãy định cấu hình mô-đun Firebase:
- Nhập mô-đun
FirebaseCore
trongUIApplicationDelegate
, cũng như mọi mô-đun Firebase khác mà ứng dụng của bạn sử dụng. Ví dụ: để sử dụng Cloud Firestore và Authentication:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Định cấu hình một bản sao
FirebaseApp
dùng chung trong phương thứcapplication(_:didFinishLaunchingWithOptions:)
của uỷ quyền ứng dụng: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];
- Nếu đang sử dụng SwiftUI, bạn phải tạo một trình uỷ quyền ứng dụng và đính kèm trình uỷ quyền đó vào cấu trúc
App
thông quaUIApplicationDelegateAdaptor
hoặcNSApplicationDelegateAdaptor
. Bạn cũng phải tắt tính năng hoán đổi ứng dụng uỷ quyền. Để biết thêm thông tin, hãy xem hướng dẫn về SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
Biên dịch lại ứng dụng.
Bước 2: Tạo sự kiện hiệu suất để hiển thị dữ liệu ban đầu
Firebase bắt đầu xử lý các sự kiện khi bạn thêm thành công SDK vào ứng dụng. Nếu bạn vẫn đang phát triển cục bộ, hãy tương tác với ứng dụng để tạo sự kiện cho quá trình thu thập và xử lý dữ liệu ban đầu.
Tiếp tục phát triển ứng dụng bằng trình mô phỏng hoặc thiết bị kiểm thử.
Tạo sự kiện bằng cách chuyển đổi ứng dụng giữa chế độ nền và chế độ nền trước nhiều lần, tương tác với ứng dụng bằng cách di chuyển trên các màn hình và/hoặc kích hoạt các yêu cầu mạng.
Chuyển đến Trang tổng quan về hiệu suất của bảng điều khiển Firebase. Bạn sẽ thấy dữ liệu ban đầu hiển thị trong vòng vài phút.
Nếu bạn không thấy dữ liệu ban đầu, hãy xem các mẹo khắc phục sự cố.
Bước 3: (Không bắt buộc) Xem thông điệp nhật ký cho các sự kiện hiệu suất
Bật tính năng ghi nhật ký gỡ lỗi như sau:
- Trong Xcode (phiên bản tối thiểu là 15.2), hãy chọn Product (Sản phẩm) > Scheme (Lược đồ) > Edit scheme (Chỉnh sửa lược đồ).
- Chọn Run (Chạy) trong trình đơn bên trái, rồi chọn thẻ Arguments (Đối số).
- Trong mục Arguments Passed on Launch (Đối số được truyền khi khởi chạy), hãy thêm
-FIRDebugEnabled
.
Kiểm tra thông điệp nhật ký để xem có thông báo lỗi nào không.
Performance Monitoring gắn thẻ thông điệp nhật ký bằng
Firebase/Performance
để bạn có thể lọc thông điệp nhật ký.Kiểm tra các loại nhật ký sau đây cho biết Performance Monitoring đang ghi lại các sự kiện hiệu suất:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
Nhấp vào URL để xem dữ liệu của bạn trong bảng điều khiển Firebase. Có thể mất vài giây để dữ liệu cập nhật trong trang tổng quan.
Nếu ứng dụng của bạn không ghi lại các sự kiện hiệu suất, hãy xem các mẹo khắc phục sự cố.
Bước 4: (Không bắt buộc) Thêm tính năng giám sát tuỳ chỉnh cho mã cụ thể
Để theo dõi dữ liệu hiệu suất liên kết với mã cụ thể trong ứng dụng, bạn có thể đo lường dấu vết mã tuỳ chỉnh.
Với dấu vết mã tuỳ chỉnh, bạn có thể đo lường thời gian ứng dụng của mình hoàn tất một tác vụ hoặc một nhóm tác vụ cụ thể, chẳng hạn như tải một nhóm hình ảnh hoặc truy vấn cơ sở dữ liệu. Chỉ số mặc định cho dấu vết mã tuỳ chỉnh là thời lượng, nhưng bạn cũng có thể thêm các chỉ số tuỳ chỉnh, chẳng hạn như số lượt truy cập vào bộ nhớ đệm và cảnh báo về bộ nhớ.
Trong mã, bạn xác định điểm bắt đầu và điểm kết thúc của dấu vết mã tuỳ chỉnh (và thêm mọi chỉ số tuỳ chỉnh mong muốn) bằng API do SDK Performance Monitoring cung cấp.
Truy cập vào phần Thêm tính năng giám sát cho mã cụ thể để tìm hiểu thêm về các tính năng này và cách thêm các tính năng này vào ứng dụng của bạn.
Bước 5: Triển khai ứng dụng rồi xem xét kết quả
Sau khi xác thực Performance Monitoring bằng trình mô phỏng Xcode và một hoặc nhiều thiết bị thử nghiệm, bạn có thể triển khai phiên bản cập nhật của ứng dụng cho người dùng.
Bạn có thể theo dõi dữ liệu hiệu suất trong trang tổng quan về Hiệu suất của bảng điều khiển Firebase.
Các vấn đề đã biết
- Performance Monitoring có các vấn đề về khả năng tương thích đã biết với GTMSQLite. Bạn không nên sử dụng Performance Monitoring với các ứng dụng sử dụng GTMSQLite.
- Việc hoán đổi phương thức sau khi gọi
FirebaseApp.configure()
có thể gây cản trở SDK Performance Monitoring. - Các vấn đề đã biết với Trình mô phỏng iOS 8.0-8.2 khiến Performance Monitoring không thể ghi lại các sự kiện hiệu suất. Các vấn đề này được khắc phục trong Trình mô phỏng iOS 8.3 trở lên.
- Các kết nối được thiết lập bằng
backgroundSessionConfiguration
của NSURLSession sẽ hiển thị thời gian kết nối lâu hơn dự kiến. Các kết nối này được thực thi ngoài quy trình và thời gian phản ánh các sự kiện gọi lại trong quy trình.
Các bước tiếp theo
Xem lại và chạy mẫu mã iOS Performance Monitoring trên GitHub.
Tìm hiểu thêm về dữ liệu do Performance Monitoring thu thập tự động:
- Dữ liệu liên quan đến vòng đời của ứng dụng, chẳng hạn như thời gian khởi động ứng dụng
- Dữ liệu để hiển thị màn hình trong ứng dụng
- Dữ liệu cho yêu cầu mạng HTTP/S do ứng dụng của bạn đưa ra
Xem, theo dõi và lọc dữ liệu hiệu suất trong bảng điều khiển Firebase.
Thêm tính năng giám sát cho các tác vụ hoặc quy trình công việc cụ thể trong ứng dụng bằng cách đo lường dấu vết mã tuỳ chỉnh.