Przetestuj swoją implementację Crashlytics

Wymuś awarię, aby przetestować implementację

  1. Dodaj do aplikacji kod, którego możesz użyć do wymuszenia awarii testowej.

    Możesz użyć poniższego kodu, aby dodać do aplikacji przycisk, który po naciśnięciu powoduje awarię. Przycisk jest oznaczony jako „Test Crash”.

    Szybki

    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]
      }
    }
    

    Cel 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. Twórz i uruchamiaj swoją aplikację w Xcode. Wykonaj poniższe czynności, aby upewnić się, że urządzenie testowe lub symulator jest odłączony od debugera Xcode (co zakłóca działanie Crashlytics).

    1. Kliknij budować i uruchom aktualny program do budowania aplikacji na urządzeniu testowym lub symulatora.

    2. Poczekaj, aż aplikacja jest uruchomiona, kliknij przycisk Zatrzymaj uruchomiony program lub działanie, aby zamknąć początkowy instancję aplikacji. Ta początkowa instancja zawierała debugger, który koliduje z Crashlytics.

  3. Wymuś awarię testową, aby wysłać pierwszy raport o awarii aplikacji:

    1. Otwórz aplikację z ekranu głównego urządzenia testowego lub symulatora.

    2. W swojej aplikacji naciśnij przycisk „Przetestuj awarię”, który został dodany za pomocą powyższego kodu.

    3. Po awarii aplikacji uruchom ją ponownie z Xcode, aby aplikacja mogła wysłać raport o awarii do Firebase.

  4. Idź na desce rozdzielczej Crashlytics konsoli Firebase, aby zobaczyć swój Crash test.

Jeśli po odświeżeniu konsoli nadal nie widzisz awarii testu po pięciu minutach, spróbuj włączyć rejestrowanie debugowania (następna sekcja).

Włącz rejestrowanie debugowania dla Crashlytics

Jeśli nie widzisz awarii testowej na pulpicie nawigacyjnym Crashlytics, możesz użyć rejestrowania debugowania dla Crashlytics, aby pomóc w śledzeniu problemu.

  1. Włącz rejestrowanie debugowania:

    1. W Xcode, wybierz schemat produktu> Schemat> Edytuj.

    2. Wybierz polecenie Uruchom z menu po lewej stronie, a następnie wybierz kartę argumentów.

    3. W Argumenty przekazywane w sekcji uruchamianie, dodać -FIRDebugEnabled .

  2. Wymuś awarię testową. Pierwsza sekcja na tej stronie opisuje, jak to zrobić.

  3. W dziennikach wyszukaj komunikat dziennika z Crashlytics zawierający następujący ciąg, który potwierdza, że ​​aplikacja wysyła awarie do Firebase.

    Completed report submission

Jeśli nie widzisz tego dziennika lub swoją Crash test w desce rozdzielczej Crashlytics konsoli Firebase Po pięciu minutach dotrzeć do Firebase Wsparcie z kopią wydruku dziennika tak, że możemy pomóc Ci rozwiązać dalej.

Następne kroki