簡體   English   中英

在應用程序級別初始化Fabric和Crashlytics有什么缺點嗎?

[英]Is there any downside to initializing Fabric & Crashlytics at the Application level?

在Crashlytics的官方文檔中,它顯示了在活動的onCreate方法中初始化Fabric。 我想在整個應用程序中使用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();
    }
}

在我的測試中,這似乎適用於我的目的,但我想確保這不是一個反模式,因為我似乎無法找到任何關於它的文檔。

來自Fabric的Mike來自這里。 是的,您可以並且應該將它移動到應用程序的子類onCreate()如果有的話)。 參考

“如果您有一個Application子類,那么您可以在onCreate()方法中放置Fabric.with() 。否則,如果您的應用程序中有多個啟動活動,則將Fabric.with()添加到每個啟動活動。只在您第一次調用start時初始化,因此多次調用它不會導致任何問題。“

應用程序直到你的Android應用程序進程被殺死。 您可以使用它來存儲可能在各種活動中使用的特定於應用程序的數據(只要您的應用程序處於活動狀態)。

由於Fabric需要在應用程序啟動時初始化,因此最好在Application類中初始化它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM