This guide contains instructions for the latest version of the Firebase Crashlytics SDK. If you migrated your app from Fabric, make sure it's been upgraded and no longer uses the deprecated legacy Fabric SDK.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Протестируйте свою реализацию Crashlytics

Вызвать сбой для проверки вашей реализации

Вам не нужно ждать сбоя, чтобы знать, что Crashlytics работает. Вы можете использовать SDK для принудительного сбоя, добавив в приложение следующий код:

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("Crash", for: [])
        button.addTarget(self, action: #selector(self.crashButtonTapped(_:)), for: .touchUpInside)
        view.addSubview(button)
    }

    @IBAction func crashButtonTapped(_ sender: AnyObject) {
        fatalError()
    }
}

Цель-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:@"Crash" forState:UIControlStateNormal];
    [button addTarget:self action:@selector(crashButtonTapped:)
        forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:button];
}

- (IBAction)crashButtonTapped:(id)sender {
    @[][1];
}

@end

Чтобы протестировать реализацию, нажмите кнопку в своем приложении, чтобы вызвать сбой, затем снова откройте приложение, чтобы Crashlytics мог отправить отчет о сбое в Firebase. Отчет появится в консоли Firebase в течение пяти минут.

Настройте параметры отладки вашего проекта

Crashlytics не может фиксировать сбои, если к вашей сборке при запуске подключен отладчик. Настройте параметры сборки, чтобы изменить формат отладочной информации проекта:

  1. Пока ваш проект все еще выбран в Xcode Navigator, откройте вкладку Build Settings .
  2. Щелкните « Все» в верхней части вкладки, чтобы отобразить все параметры сборки.
  3. Найдите "формат отладочной информации".
  4. Установите для параметра Формат отладочной информации значение DWARF с файлом dSYM .

Проверить это

Приведенный выше фрагмент кода добавляет кнопку, которая приводит к сбою приложения при нажатии. Чтобы все заработало, запустите приложение без отладчика:

  1. Щелкните Build, а затем запустите текущую схему в Xcode, чтобы создать приложение на устройстве или симуляторе.
  2. Нажмите « Остановить выполнение схемы или действия в Xcode, чтобы закрыть начальный экземпляр вашего приложения. Этот начальный экземпляр включает отладчик, который мешает Crashlytics.
  3. Снова откройте приложение на симуляторе или устройстве.
  4. Коснитесь Crash, чтобы вывести приложение из строя.
  5. Откройте приложение еще раз, чтобы Crashlytics API сообщил о сбое. Ваш сбой должен появиться в консоли Firebase в течение 5 минут.

Включить ведение журнала отладки Crashlytics

Если ваш принудительный сбой не произошел, произошел сбой раньше, чем вы хотели, или у вас возникла другая проблема с Crashlytics, вы можете включить ведение журнала отладки Crashlytics, чтобы отследить проблему.

Чтобы включить ведение журнала отладки на устройстве разработки, укажите следующий аргумент командной строки в Xcode:

-FIRDebugEnabled

Следующие шаги

  • Настроить отчеты о сбоях - Crashlytics автоматически начинает сбор отчетов о сбоях, как только вы добавляете SDK, но вы также можете настроить свою настройку, добавив отчеты о согласии, журналы, ключи и даже отслеживание нефатальных ошибок.