Android应用程序不会崩溃,但不会响应未捕获的exception

我最近注意到,当未捕获的exception发生时,我的应用程序不会崩溃,但它没有响应。 我使用Google Analytics(分析)来了解崩溃,我怀疑这可能是问题的原因。

当我在onCreate() (在super.onCreate()之后立即抛出NullPointerException )时,应用程序显示一个白色屏幕,但不会崩溃。

Logcat说:

 06-30 14:00:59.386 26259-26259/? I/GAv4﹕ Google Analytics 7.5.71 is starting up. To enable debug logging on a device run: adb shell setprop log.tag.GAv4 DEBUG adb logcat -s GAv4 06-30 14:00:59.398 26259-26259/? W/GAv4﹕ AnalyticsReceiver is not registered or is disabled. Register the receiver for reliable dispatching on non-Google Play devices. See http://goo.gl/8Rd3yj for instructions. 06-30 14:00:59.409 26259-26259/? W/GAv4﹕ CampaignTrackingReceiver is not registered, not exported or is disabled. Installation campaign tracking is not possible. See http://goo.gl/8Rd3yj for instructions. 06-30 14:00:59.414 26259-26295/? W/GAv4﹕ AnalyticsService not registered in the app manifest. Hits might not be delivered reliably. See http://goo.gl/8Rd3yj for instructions. 06-30 14:00:59.467 26259-26259/? D/AndroidRuntime﹕ Shutting down VM 

我希望看到未捕获的exception,因为如果我没有看到堆栈跟踪和问题的原因,就很难解决它们。

我能做些什么来恢复以前的行为?

编辑:删除分析错误报告(不调用tracker.enableExceptionReporting(true); )后,我再次得到崩溃。 我使用Play Services 7.5.0的Analytics(分析)。

Solutions Collecting From Web of "Android应用程序不会崩溃,但不会响应未捕获的exception"

Google Analytics(分析)是罪魁祸首 尝试禁用它(或禁用未捕获的exception的自动报告),而您正在开发,并使用释放密钥签署您的应用程序时启用它。

Exceptions情况默认显示在控制台中。

如果你不想检查控制台(因为Logcat有时是一个很大的麻烦,所以我觉得这样做更方便),那么只要在Logcat Log时候显示Exception就可以了。

 try { } catch (Exception e) { Log.e("YOUR_APP_TAG", "Exception occured: ", e); }