Есть ли какие-либо недостатки инициализации Fabric & Crashlytics на уровне приложений? - PullRequest
0 голосов
/ 05 сентября 2018

В официальной документации Crashlytics показано, как инициализировать Fabric в методе onCreate операции. Я хотел бы, чтобы отчет о сбоях Crashlytics распространялся на все приложение, есть ли какой-либо недостаток в том, чтобы поместить вызов инициализации на уровень приложения? Будет ли этого изменения достаточно для получения отчетов о сбоях по всему приложению?

Пример из документации:

public class MainActivity extends ActionBarActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      Fabric.with(this, new Crashlytics());
      setContentView(R.layout.activity_main);
    }
}

Как бы я хотел это сделать:

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        Fabric.with(this, new Crashlytics());
        super.onCreate();
    }
}

В моем тестировании это, кажется, работает для моих целей, но я хочу убедиться, что это не анти-паттерн, так как я не могу найти какую-либо документацию по нему.

Ответы [ 2 ]

0 голосов
/ 06 сентября 2018

Майк из ткани здесь. Да, вы можете и должны переместить его в подкласс приложения onCreate(), если он у вас есть. Для ссылка :

"Если у вас есть подкласс Application, вы можете поместить Fabric.with() в метод onCreate(). В противном случае, если у вас есть несколько действий запуска в вашем приложении, тогда добавьте Fabric.with() к каждому действию запуска. Fabric - только инициализируется при первом вызове start, поэтому его многократный вызов не вызовет проблем. "

0 голосов
/ 05 сентября 2018

Приложение - это то, что живет до тех пор, пока процесс вашего приложения для Android не будет убит. Вы можете использовать это для хранения специфичных для Приложения данных (при условии, что ваше приложение живо), которые могут использоваться для различных действий.

Поскольку Fabric необходимо инициализировать при запуске приложения, лучше инициализировать его в классе Application.

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