async Task syncStackTrace(CrashGroup crashGroup) { var app = Database.Main.GetObject <AppClass>(crashGroup.AppId); var resp = await Api.Crash.GetStacktrace(crashGroup.Id, app.Owner.Name, app.Name); var stack = resp.ToStackTrace(crashGroup); Database.Main.InsertOrReplace(stack); }
public Task SyncStackTrace(CrashGroup crashGroup) => RunSingularTask(() => syncStackTrace(crashGroup), crashGroup.Id);
public static ReasonStackFrame ToReasonStackFrame(this MobileCenterApi.Models.ReasonStackFrame stack, CrashGroup crashGroup) { return(new ReasonStackFrame { AppCode = stack.AppCode, AppId = crashGroup.AppId, ClassMethod = stack.ClassMethod, ClassName = stack.ClassName, CodeFormatted = stack.CodeFormatted, CrashGroupId = crashGroup.Id, File = stack.File, FrameworkName = stack.FrameworkName, Language = stack.Language.HasValue ? (ReasonStackFrameLanguage?)stack.Language : null, Line = stack.Line, Method = stack.Method, MethodParams = stack.MethodParams, }); }
public static StackTrace ToStackTrace(this MobileCenterApi.Models.Stacktrace stack, CrashGroup crashGroup) { return(new StackTrace { CrashGroupId = crashGroup.Id, Exception = stack.Exception?.ToExceptionModel(), Reason = stack.Reason, Threads = stack.Threads?.Select(x => x.ToThreadModel()).ToArray(), Title = stack.Title, }); }
public async void CrashSelected(CrashGroup crashGroup) { await NavigationService.PushAsync(new CrashDetailsViewModel { CrashGroupId = crashGroup.Id }); }