In einer App die ich entwickle, bin ich mit Google Analytics wie so abgefangene Ausnahmen zu verfolgen:Wie erzwinge normale Crash-Verhalten bei Verwendung von setDefaultUncaughtExceptionHandler()?
// ...after setting up Google Analytics...
Thread.setDefaultUncaughtExceptionHandler(new AnalyticsExceptionHandler(Thread.getDefaultUncaughtExceptionHandler()));
Und dies ist der Handler, die AnalyticsExceptionHandler Klasse:
public class AnalyticsExceptionHandler implements UncaughtExceptionHandler
{
// Private
private UncaughtExceptionHandler _defaultHandlerRef;
public AnalyticsExceptionHandler(UncaughtExceptionHandler defaultHandlerRef)
{
this._defaultHandlerRef = defaultHandlerRef;
}
@Override
public void uncaughtException(Thread t, Throwable e)
{
// ...track and send the exception to Google Analytics...
_defaultHandlerRef.uncaughtException(t, e);
}
}
Thing ist, die App stürzt eigentlich nie ab, sie friert einfach ein. Wenn ich die setDefaultUncaughtExceptionHandler() Zeile entfernen, stürzt die App normal ab.
Mache ich etwas in dem obigen Code falsch, indem ich es an den vorherigen Standard-Handler übergebe?
Werfen Sie einen Blick auf https://stackoverflow.com/questions/46070393/replacing-default-uncaught-exception-handler-to-avoid-crash-dialog es Ihnen helfen könnte –