Teste sua implementação do Crashlytics

Forçar uma falha para testar sua implementação

  1. Adicione código ao seu aplicativo que você pode usar para forçar uma falha de teste.

    Você pode usar o código a seguir para adicionar um botão ao seu aplicativo que, quando pressionado, causa uma falha. O botão é denominado "Test Crash".

    SwiftUI

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

    UI Kit

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

    Objetivo-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. Crie e execute seu aplicativo no Xcode com o depurador Xcode desconectado.

    1. Clique em Build e execute o esquema atual para criar seu aplicativo em um dispositivo de teste ou simulador.

    2. Aguarde até que seu aplicativo esteja em execução e clique em Parar de executar o esquema ou ação para fechar a instância inicial do seu aplicativo. Esta instância inicial incluía o depurador que interfere no Crashlytics.

  3. Force a falha do teste para enviar o primeiro relatório de falha do seu aplicativo:

    1. Abra seu aplicativo na tela inicial do seu dispositivo de teste ou simulador.

    2. No seu aplicativo, pressione o botão "Test Crash" que você adicionou usando o código acima.

    3. Depois que seu aplicativo travar, execute-o novamente no Xcode para que seu aplicativo possa enviar o relatório de falha ao Firebase.

  4. Acesse o painel do Crashlytics do console do Firebase para ver a falha do teste.

Se você atualizou o console e ainda não vê a falha do teste após cinco minutos, tente ativar o log de depuração (próxima seção).

Habilitar registro de depuração para Crashlytics

Se você não vir a falha do teste no painel do Crashlytics, poderá usar o registro de depuração do Crashlytics para ajudar a rastrear o problema.

  1. Habilite o registro de depuração:

    1. No Xcode, selecione Produto > Esquema > Editar esquema .

    2. Selecione Executar no menu esquerdo e selecione a guia Argumentos .

    3. Na seção Argumentos passados ​​na inicialização , adicione -FIRDebugEnabled .

  2. Forçar uma falha de teste. A primeira seção desta página descreve como fazer isso.

  3. Nos seus registros, procure uma mensagem de registro do Crashlytics que contenha a string a seguir, que verifica se o seu aplicativo está enviando falhas ao Firebase.

    Completed report submission

Se você não vir esse log ou a falha do teste no painel do Crashlytics do console do Firebase após cinco minutos, entre em contato com o suporte do Firebase com uma cópia da saída do log para que possamos ajudar você a solucionar problemas.

Próximos passos