Crashlytics вылетает при регистрации

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

java.lang.IllegalStateException: 
at io.fabric.sdk.android.Fabric.singleton (Fabric.java:275)
at io.fabric.sdk.android.Fabric.getKit (Fabric.java:525)
at com.crashlytics.android.Crashlytics.getInstance 
(Crashlytics.java:188)
at com.crashlytics.android.Crashlytics.checkInitialized 
(Crashlytics.java:371)
at com.crashlytics.android.Crashlytics.log (Crashlytics.java:230)

Журнал вызывается в другом модуле, например:

Crashlytics.log(Log.DEBUG, "ISA", "Some log");

Основной модуль инициализирует Crashlytics в основной точке входа, прямо в onCreate, после вызова super.onCreate(savedInstanceState);:

Fabric.with(this, new Crashlytics());

Проблема появляется только на некоторых устройствах (1/100). Есть идеи, почему это происходит?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
621
1

Ответы 1

У меня никогда не было проблем с Fabric с этим. На мой взгляд, вы неправильно инициализировали Fabric.

Ткань должна быть инициализирована в классе Application:

public class MyApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        Fabric.with(this, new Crashlytics());
    }
}

Не могли бы вы объяснить, почему его следует инициализировать в приложении, а не в основном действии onCreate?

user1592546 10.08.2018 12:12

@ user1592546, потому что так написано в документации Fabric.

DennyDog 20.08.2018 08:30

@DennyDog Я не вижу этого в документации: firebase.google.com/docs/crashlytics/get-started

android developer 14.03.2019 18:11

@ClassA Fabric - старая. Firebase Crashlytics - новейшая версия.

android developer 01.07.2019 10:35

@androiddeveloper Да, но этот вопрос связан с аварийной обработкой ткани. Кроме того, ткань можно использовать до следующего года.

ClassA 01.07.2019 10:37

@ClassA Подождите, под словом "до следующего года" вы имеете в виду, что после этого он перестанет работать?

android developer 01.07.2019 10:39

@androiddeveloper да, ткань перемещается на firebase, все пользователи должны выполнить миграцию до этого - get.fabric.io/roadmap

ClassA 01.07.2019 10:42

@ClassA Интересно, но что будет с приложениями, которые его используют, но не обновлены для использования Firebase? Будет ли это работать для них?

android developer 01.07.2019 10:45

@androiddeveloper Я не уверен, закроется ли сайт Fabric. В настоящее время после миграции ваши данные доступны в Google crashlytics и Fabric. Поэтому я предполагаю, что более старые приложения по-прежнему смогут использовать Fabric, пока веб-сайт остается в рабочем состоянии.

ClassA 01.07.2019 10:52

О том, перестанет ли он работать, не говорится. Только о том, что будет работать. Однако есть подсказки: «Попрощайтесь с Fabric», «Мы будем поддерживать Fabric до тех пор, пока» ... Я думаю, это перестанет работать. Надеюсь, это не приведет к сбою многих приложений.

android developer 01.07.2019 12:15

31 МАРТА 2020 Прощание с Тканью - по ссылке.

DennyDog 01.07.2019 12:31

Другие вопросы по теме