Catch up on everthing we announced at this year's Firebase Summit. Learn more

Bắt đầu với Firebase Crashlytics

Phần bắt đầu nhanh này mô tả cách thiết lập Firebase Crashlytics trong ứng dụng của bạn với SDK Firebase Crashlytics để bạn có thể nhận được báo cáo sự cố toàn diện trong bảng điều khiển Firebase.

Việc thiết lập Crashlytics yêu cầu các tác vụ trong bảng điều khiển Firebase và IDE của bạn (như thêm tệp cấu hình Firebase và Crashlytics SDK). Để hoàn tất quá trình thiết lập, bạn cần phải thực hiện kiểm tra sự cố để gửi báo cáo sự cố đầu tiên của bạn tới Firebase.

Trước khi bắt đầu

  1. Nếu bạn chưa sẵn sàng, thêm căn cứ hỏa lực cho dự án Apple của bạn. Nếu bạn không có một ứng dụng của Apple, bạn có thể tải về một ứng dụng mẫu .

  2. Khuyến cáo: Để có được các tính năng như sử dụng sụp đổ miễn phí, các bản ghi mẩu bánh mì, và cảnh báo tốc độ, bạn cần phải kích hoạt Google Analytics trong dự án căn cứ hỏa lực của bạn.

    nền tảng Tất cả của Apple hỗ trợ bởi Crashlytics (trừ watchos) có thể tận dụng lợi thế của các tính năng này từ Google Analytics. Lưu ý rằng bạn cần SDK v8.9.0 + cho các ứng dụng macOS và tvOS.

    • Nếu dự án căn cứ hỏa lực hiện tại của bạn không bật Google Analytics, bạn có thể kích hoạt Google Analytics từ tab Tích hợp của bạn > Cài đặt dự án trong căn cứ hỏa lực console.

    • Nếu bạn đang tạo một dự án Firebase mới, hãy bật Google Analytics trong quá trình tạo dự án.

Bước 1: Bật Crashlytics trong căn cứ hỏa lực console

  1. Đi đến bảng điều khiển Crashlytics trong căn cứ hỏa lực console.

  2. Hãy chắc chắn rằng ứng dụng của bạn được chọn từ menu thả xuống bên cạnh Crashlytics ở phía trên cùng của trang.

  3. Bấm Enable Crashlytics.

Bước 2: Thêm các căn cứ hỏa lực Crashlytics SDK để ứng dụng của bạn

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 của Firebase.

  1. Trong Xcode, với dự án ứng dụng của bạn mở, điều hướng tới File> Swift gói> Thêm gói phụ thuộc.
  2. Khi được nhắc, hãy thêm kho lưu trữ SDK nền tảng Apple Firebase:
  3.   https://github.com/firebase/firebase-ios-sdk
      
  4. Chọn thư viện Crashlytics.
  5. Đối với một kinh nghiệm tối ưu với Crashlytics, chúng tôi khuyên phép Google Analytics trong dự án căn cứ hỏa lực của bạn và thêm SDK căn cứ hỏa lực cho Google Analytics để ứng dụng của bạn. Bạn có thể chọn thư viện không có bộ sưu tập IDFA hoặc có bộ sưu tập IDFA.
  6. Khi hoàn tất, Xcode sẽ tự động bắt đầu giải quyết và tải xuống các phần phụ thuộc của bạn trong nền.

Tiếp theo, hãy định cấu hình mô-đun Firebase:

  1. Nhập module căn cứ hỏa lực trong bạn UIApplicationDelegate :

    Nhanh

    import Firebase

    Objective-C

    @import Firebase;
  2. Cấu hình một FirebaseApp chia sẻ Ví dụ, điển hình là trong ứng dụng của bạn application:didFinishLaunchingWithOptions: phương pháp:

    Nhanh

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

    Objective-C

    // Use the Firebase library to configure APIs.
    [FIRApp configure];
    

Bước 3: Thiết lập Xcode để tự động tải file dSYM

Để tạo các báo cáo sự cố mà con người có thể đọc được, Crashlytics cần các tệp biểu tượng gỡ lỗi (dSYM) của dự án của bạn. Các bước sau đây mô tả cách định cấu hình Xcode để tự động tạo dSYM của bạn, xử lý chúng và tải lên tệp bất cứ khi nào bạn xây dựng ứng dụng của mình.

  1. Mở không gian làm việc Xcode của dự án của bạn, sau đó chọn tệp dự án của nó trong trình điều hướng bên trái.

  2. Từ danh sách MỤC TIÊU, chọn chính xây dựng mục tiêu của bạn.

  3. Nhấp vào tab Cài đặt xây dựng, sau đó hoàn thành các bước sau để Xcode sản xuất dSYMs cho xây dựng của bạn.

    1. Nhấn All, sau đó tìm kiếm debug information format .

    2. Set Thông tin gỡ lỗi Format để lùn với dSYM tệp cho tất cả xây dựng các loại của bạn.

  4. Nhấp vào tab giai đoạn xây dựng, sau đó hoàn thành các bước sau để có thể xử lý Xcode dSYMs của bạn và tải lên các tập tin.

    1. Bấm > New Run Script giai đoạn.

      Hãy chắc chắn rằng giai đoạn Run Script mới này là xây dựng giai đoạn cuối cùng của dự án của bạn; nếu không, Crashlytics không thể xử lý các dSYM đúng cách.

    2. Mở rộng phần Run Script mới.

    3. Trong lĩnh vực kịch bản (nằm dưới nhãn Shell), thêm đoạn mã chạy sau.

      Tập lệnh này xử lý tệp dSYM của dự án của bạn và tải tệp lên Crashlytics.

      "${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
    4. Trong Input phần Files, thêm các đường dẫn cho các tập tin sau đây.

      • Thêm đường dẫn đến các tệp dSYM của dự án của bạn

        Điều này cho phép Crashlytics xử lý dSYM cho các ứng dụng lớn nhanh hơn.

        ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
      • Thêm đường dẫn đến xây dựng của dự án của bạn Info.plist tập tin

        Điều này cho phép Crashlytics liên kết phiên bản ứng dụng với dSYM.

        $(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)

Để biết thông tin chi tiết hơn về các tập tin dSYM và Crashlytics (bao gồm làm thế nào để tải tệp dSYM), hãy truy cập Get deobfuscated báo cáo sự cố .

Bước 4: Lực lượng một vụ tai nạn kiểm tra để kết thúc cài đặt

Để hoàn tất quá trình thiết lập Crashlytics và xem dữ liệu ban đầu trong trang tổng quan Crashlytics của bảng điều khiển Firebase, bạn cần thực hiện kiểm tra sự cố.

  1. Thêm mã vào ứng dụng của bạn mà bạn có thể sử dụng để tạo ra sự cố thử nghiệm.

    Bạn có thể sử dụng mã sau để thêm một nút vào ứng dụng của mình mà khi được nhấn, sẽ gây ra lỗi. Nút có nhãn "Kiểm tra sự cố".

    Nhanh

    import UIKit
    
    class ViewController: UIViewController {
      override func viewDidLoad() {
          super.viewDidLoad()
    
          // Do any additional setup after loading the view, typically from a nib.
    
          let button = UIButton(type: .roundedRect)
          button.frame = CGRect(x: 20, y: 50, width: 100, height: 30)
          button.setTitle("Test Crash", for: [])
          button.addTarget(self, action: #selector(self.crashButtonTapped(_:)), for: .touchUpInside)
          view.addSubview(button)
      }
    
      @IBAction func crashButtonTapped(_ sender: AnyObject) {
          let numbers = [0]
          let _ = numbers[1]
      }
    }
    

    Objective-C

    #import "ViewController.h"
    
    @implementation ViewController
    ‐ (void)viewDidLoad {
        [super viewDidLoad];
    
        // Do any additional setup after loading the view, typically from a nib.
    
        UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        button.frame = CGRectMake(20, 50, 100, 30);
        [button setTitle:@"Test Crash" forState:UIControlStateNormal];
        [button addTarget:self action:@selector(crashButtonTapped:)
            forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:button];
    }
    
    ‐ (IBAction)crashButtonTapped:(id)sender {
        @[][1];
    }
    
    @end
    
  2. Xây dựng và chạy ứng dụng của bạn trong Xcode. Sử dụng các bước sau để đảm bảo rằng thiết bị thử nghiệm hoặc trình mô phỏng của bạn bị ngắt kết nối khỏi trình gỡ lỗi Xcode (can thiệp vào Crashlytics).

    1. Nhấn xây dựng và sau đó chạy chương trình hiện tại để xây dựng ứng dụng của bạn trên một thiết bị thử nghiệm hoặc mô phỏng.

    2. Chờ cho đến khi ứng dụng của bạn đang chạy, sau đó bấm Ngừng chạy chương trình hay hành động để đóng dụ ban đầu của ứng dụng của bạn. Phiên bản ban đầu này bao gồm trình gỡ lỗi can thiệp vào Crashlytics.

  3. Buộc kiểm tra sự cố để gửi báo cáo sự cố đầu tiên của ứng dụng của bạn:

    1. Mở ứng dụng của bạn từ màn hình chính của thiết bị thử nghiệm hoặc trình mô phỏng.

    2. Trong ứng dụng của bạn, hãy nhấn vào nút "Kiểm tra sự cố" mà bạn đã thêm bằng cách sử dụng mã ở trên.

    3. Sau khi ứng dụng của bạn gặp sự cố, hãy chạy lại ứng dụng từ Xcode để ứng dụng của bạn có thể gửi báo cáo sự cố tới Firebase.

  4. Đi đến bảng điều khiển Crashlytics của các firebase console để xem vụ tai nạn thử nghiệm của bạn.

    Nếu bạn đã làm mới giao diện điều khiển và bạn vẫn không nhìn thấy vụ tai nạn kiểm tra sau năm phút, cho phép gỡ lỗi đăng nhập để xem nếu ứng dụng của bạn đang gửi báo cáo sự cố.


Và đó là nó! Crashlytics hiện đang theo dõi ứng dụng của bạn để tìm lỗi. Truy cập vào bảng điều khiển Crashlytics để xem và điều tra tất cả các báo cáo và thống kê của bạn.

Bước tiếp theo