假設一個Android應用程序有多個入口點相關的任務:系統啓動活動,服務等執行處理啓動
而且假設我們需要執行一些任務時,應用程序(這意味着它的任何組件)以上述任何選項開始。把它放在一些背景下,假設我們需要初始化崩潰報告系統。
把代碼放在每一個antry點(Activity.onCreate()
,Service..onCreate()
)是首先想到的,但它看起來應該有一個更好的方法。
實施它的做法是什麼?
假設一個Android應用程序有多個入口點相關的任務:系統啓動活動,服務等執行處理啓動
而且假設我們需要執行一些任務時,應用程序(這意味着它的任何組件)以上述任何選項開始。把它放在一些背景下,假設我們需要初始化崩潰報告系統。
把代碼放在每一個antry點(Activity.onCreate()
,Service..onCreate()
)是首先想到的,但它看起來應該有一個更好的方法。
實施它的做法是什麼?
通常的方法是放置在Application.onCreate()該代碼是 當應用程序開始調用,任何活動,服務,或接收器對象(不包括內容提供者)之前已經創建。這就是Fabric/Crashlytics初始化了多少庫。
謝謝。當我啓用Fabric Crashlytics時出現了這個問題。他們的Android Studio插件中的代碼示例實際上包含了「Activity.onCreate()」中的初始化代碼,而不是'Application.onCreate()'中更正確的代碼,這真是令人遺憾。 –
可能的原因是沒有Application類,因此它選擇將其添加到啓動Activity。如果你已經有一個應用程序類,我想它會在那裏添加初始化代碼。 – Crispert
我沒有使用自動安裝。我的意思是他們的指南根本沒有提到應用程序類中的設置。例如見[這裏](https://fabric.io/kits/android/crashlytics/install)。 –
請詳細解釋。如果你調用Activity.onCreate(),它是非常糟糕的 – redAllocator