public override NSArray AttachmentsWithCrashes(MSCrashes crashes, MSErrorReport msReport) { if (GetErrorAttachments == null) { return(null); } var report = new ErrorReport(msReport); var attachments = GetErrorAttachments(report); if (attachments != null) { var nsArray = new NSMutableArray(); foreach (var attachment in attachments) { if (attachment != null) { nsArray.Add(attachment.internalAttachment); } else { AppCenterLog.Warn(LogTag, "Skipping null ErrorAttachmentLog in Crashes.GetErrorAttachments."); } } return(nsArray); } return(null); }
static PlatformCrashes() { /* Peform custom setup around the native SDK's for setting signal handlers */ MSCrashes.DisableMachExceptionHandler(); MSWrapperCrashesHelper.SetCrashHandlerSetupDelegate(new CrashesInitializationDelegate()); AppDomain.CurrentDomain.UnhandledException += OnUnhandledException; }
static void PlatformTrackError(Exception exception, IDictionary <string, string> properties) { if (properties != null) { MSCrashes.TrackModelException(GenerateiOSException(exception, false), StringDictToNSDict(properties)); return; } MSCrashes.TrackModelException(GenerateiOSException(exception, false)); }
public override void CrashesDidSucceedSendingErrorReport(MSCrashes crashes, MSErrorReport msReport) { if (_owner.SentErrorReport != null) { var report = ErrorReportCache.GetErrorReport(msReport); var e = new SentErrorReportEventArgs(); e.Report = report; _owner.SentErrorReport(null, e); } }
public override bool CrashesShouldProcessErrorReport(MSCrashes crashes, MSErrorReport msReport) { if (ShouldProcessErrorReport == null) { return(true); } var report = new ErrorReport(msReport); return(ShouldProcessErrorReport(report)); }
public override bool CrashesShouldProcessErrorReport(MSCrashes crashes, MSErrorReport msReport) { if (_owner.ShouldProcessErrorReport == null) { return(true); } var report = ErrorReportCache.GetErrorReport(msReport); return(_owner.ShouldProcessErrorReport(report)); }
public override void CrashesDidFailSendingErrorReport(MSCrashes crashes, MSErrorReport msReport, NSError error) { if (_owner.FailedToSendErrorReport != null) { var report = ErrorReportCache.GetErrorReport(msReport); var e = new FailedToSendErrorReportEventArgs(); e.Report = report; e.Exception = error; _owner.FailedToSendErrorReport(null, e); } }
public override void CrashesDidSucceedSendingErrorReport(MSCrashes crashes, MSErrorReport msReport) { if (SentErrorReport != null) { var report = new ErrorReport(msReport); var e = new SentErrorReportEventArgs { Report = report }; SentErrorReport(null, e); } }
public override void CrashesDidFailSendingErrorReport(MSCrashes crashes, MSErrorReport msReport, NSError error) { if (FailedToSendErrorReport != null) { var report = new ErrorReport(msReport); var e = new FailedToSendErrorReportEventArgs { Report = report, Exception = error }; FailedToSendErrorReport(null, e); } }
public PlatformCrashes() { MSCrashes.SetUserConfirmationHandler((arg0) => { if (ShouldAwaitUserConfirmation != null) { return(ShouldAwaitUserConfirmation()); } return(false); }); crashesDelegate = new CrashesDelegate(this); MSCrashes.SetDelegate(crashesDelegate); }
public override void CrashesWillSendErrorReport(MSCrashes crashes, MSErrorReport msReport) { if (_owner.SendingErrorReport == null) { return; } var report = ErrorReportCache.GetErrorReport(msReport); var e = new SendingErrorReportEventArgs(); e.Report = report; _owner.SendingErrorReport(null, e); }
public PlatformCrashes() { MSCrashes.NotifyPermanentlyDisableMachExceptionHandling(); MSCrashes.SetUserConfirmationHandler((arg0) => { if (ShouldAwaitUserConfirmation != null) { return(ShouldAwaitUserConfirmation()); } return(false); }); crashesDelegate = new CrashesDelegate(this); MSCrashes.SetDelegate(crashesDelegate); }
static Crashes() { /* Perform custom setup around the native SDK's for setting signal handlers */ MSCrashes.DisableMachExceptionHandler(); MSWrapperCrashesHelper.SetCrashHandlerSetupDelegate(_crashesInitializationDelegate); AppDomain.CurrentDomain.UnhandledException += OnUnhandledException; MSCrashes.SetUserConfirmationHandler((reports) => { if (ShouldAwaitUserConfirmation != null) { return(ShouldAwaitUserConfirmation()); } return(false); }); MSCrashes.SetDelegate(_crashesDelegate); }
public override MSErrorAttachment AttachmentWithCrashes(MSCrashes crashes, MSErrorReport msReport) { if (_owner.GetErrorAttachment == null) { return(null); } var report = ErrorReportCache.GetErrorReport(msReport); ErrorAttachment attachment = _owner.GetErrorAttachment(report); if (attachment != null) { return(attachment.internalAttachment); } return(null); }
static void PlatformNotifyUserConfirmation(UserConfirmation confirmation) { MSUserConfirmation iosUserConfirmation; switch (confirmation) { case UserConfirmation.Send: iosUserConfirmation = MSUserConfirmation.Send; break; case UserConfirmation.DontSend: iosUserConfirmation = MSUserConfirmation.DontSend; break; case UserConfirmation.AlwaysSend: iosUserConfirmation = MSUserConfirmation.Always; break; default: throw new ArgumentOutOfRangeException(nameof(confirmation), confirmation, null); } MSCrashes.NotifyWithUserConfirmation(iosUserConfirmation); }
public override void TrackException(Exception exception) { MSCrashes.TrackModelException(GenerateiOSException(exception, false)); }
static Task PlatformSetEnabledAsync(bool enabled) { MSCrashes.SetEnabled(enabled); return(Task.FromResult(default(object))); }
static Task <bool> PlatformIsEnabledAsync() { return(Task.FromResult(MSCrashes.IsEnabled())); }
private static void PlatformUnsetInstance() { MSCrashes.ResetSharedInstance(); }
public override Task SetEnabledAsync(bool enabled) { MSCrashes.SetEnabled(enabled); return(Task.FromResult(default(object))); }
private void Button2_AllEvents(object sender, EventArgs e) { MSAnalytics.TrackEvent("XAMARNTRACK CrashButton BOOM"); MSCrashes.GenerateTestCrash(); }
public override Task <bool> IsEnabledAsync() { return(Task.FromResult(MSCrashes.IsEnabled())); }