Menguji implementasi Crashlytics

Memaksa error untuk menguji implementasi Anda

  1. Tambahkan kode ke aplikasi yang dapat Anda gunakan untuk memaksa error pengujian.

    Anda dapat menggunakan kode berikut untuk menambahkan tombol ke aplikasi Anda yang, saat ditekan, akan menyebabkan error. Tombol tersebut diberi label "Test Crash".

    SwiftUI

    Button("Crash") {
      fatalError("Crash was triggered")
    }
    

    UIKit

    Swift

    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. Bangun dan jalankan aplikasi di Xcode saat debugger Xcode diputuskan koneksinya.

    1. Klik Build and then run the current scheme untuk membangun aplikasi Anda di simulator atau perangkat pengujian.

    2. Tunggu hingga aplikasi Anda berjalan, lalu klik Stop running the scheme or action untuk menutup instance awal aplikasi Anda. Instance awal ini memiliki debugger yang mengganggu Crashlytics.

  3. Paksa error pengujian untuk mengirimkan laporan error pertama aplikasi:

    1. Buka aplikasi dari layar utama simulator atau perangkat pengujian Anda.

    2. Di aplikasi Anda, tekan tombol "Test Crash" yang telah ditambahkan menggunakan kode di atas.

    3. Setelah aplikasi Anda mengalami error, jalankan lagi dari Xcode sehingga aplikasi Anda dapat mengirimkan laporan error ke Firebase.

  4. Buka dasbor Crashlytics pada Firebase console untuk melihat error pengujian Anda.

Jika Anda telah me-refresh console dan masih tidak melihat error pengujian setelah lima menit, coba aktifkan logging debug (bagian berikutnya).

Mengaktifkan logging debug untuk Crashlytics

Jika Anda tidak melihat error pengujian di dasbor Crashlytics, Anda dapat menggunakan logging debug untuk Crashlytics guna membantu mencari akar masalahnya.

  1. Aktifkan logging debug:

    1. Di Xcode, pilih Product > Scheme > Edit scheme.

    2. Pilih Run dari menu kiri, lalu pilih tab Arguments.

    3. Di bagian Arguments Passed on Launch, tambahkan -FIRDebugEnabled.

  2. Paksa error pengujian. Bagian pertama di halaman ini menjelaskan cara melakukannya.

  3. Dalam log Anda, cari pesan log dari Crashlytics yang berisi string berikut, yang memverifikasi bahwa aplikasi Anda mengirimkan error ke Firebase.

    Completed report submission

Jika Anda tidak melihat log ini atau error pengujian di dasbor Crashlytics pada Firebase console setelah lima menit, hubungi Dukungan Firebase dengan menyertakan salinan output log Anda agar kami dapat membantu memecahkan masalah lebih lanjut.

Langkah berikutnya