У меня есть следующий код в моем проекте Xamarin Forms.Я использовал SentryErrorLog для регистрации исключения и сохранял сообщение об исключении на устройстве pp локально.Я проверил следующий код, и регистрация прошла успешно.Но я обнаружил, что когда происходит неизвестное исключение, вызывающее сбой приложения, в Sentry и ExternalStorageDirectory нет журнала.Неизвестное исключение вызвало завершение работы приложения и всплыло сообщение «{Имя приложения} остановлено».
Поскольку нет журнала исключения, поэтому я не знаю, как его исследовать.И это исключение случается иногда, мне трудно найти причину.Итак, я хочу знать, пропустил ли я какой-либо код, чтобы поймать исключение?Или иногда Android закрывает приложение до того, как приложение запустит обработчик события исключения?
public override void OnCreate()
{
base.OnCreate();
ravenClient = SentryErrorLog.CreateRavenClient();
AndroidEnvironment.UnhandledExceptionRaiser += AndroidEnvironment_UnhandledExceptionRaiser;
}
private void AndroidEnvironment_UnhandledExceptionRaiser(object sender, RaiseThrowableEventArgs e)
{
ravenClient.LogException(e.Exception);
LogExceptionLocally(e.Exception);
}
private void LogExceptionLocally(Exception e)
{
// Log to ExternalStorageDirectory
}
Или, может быть, мне стоит использовать другой аварийный регистратор?