Как отправить crashlyti c NON FATAL ERROR без ожидания FATAL ERROR? - PullRequest
0 голосов
/ 16 апреля 2020

Я сделал тест, чтобы понять, как работает Crashlytics. Я делаю 2 кнопки в своем приложении, 1 для отчетов NAT FATAL и 1 для отчетов FATAL CRA SH. Код выглядит так:

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    nonfatal.setOnClickListener {
        val crashlytics = FirebaseCrashlytics.getInstance()
        crashlytics.setUserId(Random.nextInt().toString())
        crashlytics.recordException(Throwable("AAA"))
    }

    fatal.setOnClickListener {
        throw Exception("This is fatal")
    }
}

Затем я пытаюсь нажать кнопку NON FATAL, а затем перезапустить мое приложение. Я не вижу никаких изменений в моей консоли c crashlyti. Но когда я нажимаю кнопку FATAL, приложение открывается sh, и я снова открываю приложение. Вскоре после этого я вижу новые записи в моей консоли c. Включая отчет NON FATAL

Итак, вывод состоит в том, что crashlytics не отправляет NON FATAL сразу. Он просто сохраняет его, затем, когда приложение создает sh, оно отправляет FATAL и NON FATAL в Firebase.

ВОПРОС: Как заставить Firebase Crashlytics отправлять NON FATAL ошибку в консоль Firebase, не дожидаясь приложения, чтобы CRA sh

Ответы [ 2 ]

1 голос
/ 16 апреля 2020

Приложению не нужно взламывать sh, чтобы отправлять нефатального пользователя. Вам просто нужно завершить сеанс приложения, а затем перезапустить приложение.

Подробнее о процессе можно прочитать здесь ,

"Исключения процессов Crashlytics в выделенный фоновый поток, поэтому влияние на производительность вашего приложения минимально. Чтобы уменьшить сетевой трафик ваших пользователей c, Crashlytics объединяет зарегистрированные исключения и отправляет их при следующем запуске приложения. "

0 голосов
/ 29 апреля 2020

Ну, я не знаю, как заставить отправлять NON FATAL на консоль Firebase. Но я только что узнал, что NON FATAL по-прежнему не отправляется при перезапуске приложения, потому что ваше приложение на самом деле не уничтожено. Поэтому, если вы хотите отправить NON FATAL, вам придется убить ваше приложение из последних приложений. После этого вы получите сообщение NON FATAL при повторном открытии приложения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...