Pruebe su implementación de Crashlytics

Forzar un bloqueo para probar su implementación

  1. Agregue código a su aplicación que pueda usar para forzar una falla de prueba.

    Puede usar el siguiente código para agregar un botón a su aplicación que, cuando se presiona, provoca un bloqueo. El botón tiene la etiqueta "Test Crash".

    Interfaz de usuario rápida

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

    UIKit

    Rápido

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

    C objetivo

    #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. Cree y ejecute su aplicación en Xcode con el depurador de Xcode desconectado.

    1. Haga clic en Construir y luego ejecute el esquema actual para construir su aplicación en un dispositivo o simulador de prueba.

    2. Espere hasta que su aplicación se esté ejecutando, luego haga clic en Detener la ejecución del esquema o acción para cerrar la instancia inicial de su aplicación. Esta instancia inicial incluía el depurador que interfiere con Crashlytics.

  3. Fuerza el bloqueo de prueba para enviar el primer informe de bloqueo de tu aplicación:

    1. Abra su aplicación desde la pantalla de inicio de su dispositivo de prueba o simulador.

    2. En su aplicación, presione el botón "Probar bloqueo" que agregó usando el código anterior.

    3. Después de que su aplicación falle, ejecútela nuevamente desde Xcode para que su aplicación pueda enviar el informe de fallas a Firebase.

  4. Vaya al panel de Crashlytics de Firebase console para ver el fallo de su prueba.

Si actualizó la consola y aún no ve el bloqueo de la prueba después de cinco minutos, intente habilitar el registro de depuración (siguiente sección).

Habilitar el registro de depuración para Crashlytics

Si no ve el fallo de su prueba en el panel de Crashlytics, puede utilizar el registro de depuración de Crashlytics para ayudar a localizar el problema.

  1. Habilite el registro de depuración:

    1. En Xcode, seleccione Producto > Esquema > Editar esquema .

    2. Seleccione Ejecutar en el menú de la izquierda, luego seleccione la pestaña Argumentos .

    3. En la sección Argumentos pasados ​​en el lanzamiento , agregue -FIRDebugEnabled .

  2. Forzar un choque de prueba. La primera sección de esta página describe cómo hacer esto.

  3. Dentro de tus registros, busca un mensaje de registro de Crashlytics que contenga la siguiente cadena, que verifica que tu aplicación envía fallas a Firebase.

    Completed report submission

Si no ve este registro o su prueba falla en el panel de Crashlytics de Firebase console después de cinco minutos, comuníquese con el soporte de Firebase con una copia del resultado del registro para que podamos ayudarlo a solucionar el problema.

Próximos pasos