2017-06-06 83 views
1

我想知道是否有任何選項來捕獲應用程序級別的異常,以停止顯示Unfortunately, (App Name) has stopped.而不是我想在用戶崩潰時向用戶顯示我的自定義消息。例如:如果應用程序在應用程序的任何屏幕上崩潰,我需要捕獲像Crashlytics那樣的圖像,並想顯示我的自定義消息。怎麼做?Catch不幸的應用程序在Android的應用程序級別崩潰

+1

找出異常被拋出並捕獲它。 –

+0

我知道,但如何在應用程序級別做到這一點? –

回答

1

我personnally做這樣的:

Thread.currentThread().setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { 
     @Override 
     public void uncaughtException(Thread t, Throwable e) { 
      //DO YOUR JOB HERE 
     } 
    }); 

在您的活動或應用程序的OnCreate將這個。最好的方法是將其保存在應用程序服務器上,並向用戶做廣告。

+0

感謝您的回答。我可以把它放在我的擴展Application類的AppClass中,如果是的話,它是在應用程序級別處理的嗎? –

+0

通常是的。官方文檔說,所有的用戶界面組件使用相同的線程。所以我會說是的:)。壞事是你失去了崩潰的活動上下文,將更難以調試 – mcfly

+0

把這個線程解決,如果這有助於你,謝謝;) – mcfly