So schreibe ich einen benutzerdefinierten UncaughtExceptionHandler in Xamarin.Android

Alles, was ich erreichen möchte, ist, Ausnahmen in meiner App abzufangen, damit ich sie an einen Server senden kann. Ich habe herausgefunden, dass ich dies tun kann, indem ich mein benutzerdefiniertes @ schreib UncaughtExceptionHandler Basis auf nativem Android-Code in Java beantwortetHie in StackOverflow.

Das ist mein CustomExceptionHandler class:

public class CustomExceptionHandler : Thread.IUncaughtExceptionHandler
{
    public IntPtr Handle { get; private set; }

    public CustomExceptionHandler(Thread.IUncaughtExceptionHandler exceptionHandler)
    {
        Handle = exceptionHandler.Handle;
    }

    public void UncaughtException(Thread t, Throwable e)
    {
        // Submit exception details to a server
        ...

        // Display error message for local debugging purposes
        Debug.WriteLine(e);
    }

    public void Dispose()
    {
        throw new NotImplementedException();
    }
}

Dann habe ich mit dieser Klasse das @ geset DefaultUncaughtExceptionHandler in meinemAktivitä:

// Set the default exception handler to a custom one
Thread.DefaultUncaughtExceptionHandler = new CustomExceptionHandler(
    Thread.DefaultUncaughtExceptionHandler);

Ich weiß nicht, was mit diesem Ansatz falsch ist, es hat gebaut, aber ich habe ein InvalidCastException zur Laufzeit.

Ich habe das selbe Thread.IUncaughtExceptionHandler Schnittstellentypen für mein CustomExceptionHandler und die DefaultUncaughtExceptionHandler, aber warum erhalte ich diesen Fehler? Bitte erleuchte mich. Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage