protected override async void OnInitialized() { SafeFireAndForgetExtensions.SetDefaultExceptionHandling(LogException); InitializeComponent(); await NavigationService.NavigateAsync("NavigationPage/MainPage"); }
public App() { InitializeComponent(); SafeFireAndForgetExtensions.SetDefaultExceptionHandling(ExceptionHandler.LogException); var page = FreshPageModelResolver.ResolvePageModel <HomePageModel>(); var navContainer = new FreshNavigationContainer(page); MainPage = navContainer; }
public async Task SafeFireAndForget_SetDefaultExceptionHandling_NoParams() { //Arrange Exception?exception = null; SafeFireAndForgetExtensions.SetDefaultExceptionHandling(ex => exception = ex); //Act NoParameterDelayedNullReferenceExceptionTask().SafeFireAndForget(); await NoParameterTask(); await NoParameterTask(); //Assert Assert.IsNotNull(exception); }
protected override async void OnInitialized() { SafeFireAndForgetExtensions.SetDefaultExceptionHandling(LogException); InitializeComponent(); VersionTracking.Track(); Xamarin.Forms.Device.SetFlags(new[] { "CarouselView_Experimental", "SwipeView_Experimental" }); switch (Xamarin.Forms.Device.RuntimePlatform) { case Xamarin.Forms.Device.Android: var permission = await DependencyService.Get <IPermission>().VerifyStoragePermissions(); break; } //TaskScheduler.UnobservedTaskException += (sender, e) => //{ // Logger.Log(e.Exception.Message); //}; #if DEBUG //HotReloader.Current.Run(this); ConstantManager.BaseUrl = ConstantManager.TestApiUrl; #elif RELEASE ConstantManager.BaseUrl = ConstantManager.StageApiUrl; #endif var versionUpdated = VersionTracking.CurrentVersion.CompareTo(VersionTracking.PreviousVersion); if (string.IsNullOrEmpty(Settings.UserId)) { await NavigationService.NavigateAsync("LoginView"); } else if (versionUpdated > 0 && VersionTracking.IsFirstLaunchForCurrentVersion && VersionTracking.PreviousVersion != null) { await NavigationService.NavigateAsync("WhatIsNewView"); } else { if (TargetIdiom.Tablet == Xamarin.Forms.Device.Idiom) { await NavigationService.NavigateAsync("MainPageTablet"); } else { await NavigationService.NavigateAsync("MainPage"); } } }
public App() { InitializeComponent(); SafeFireAndForgetExtensions.SetDefaultExceptionHandling(ex => { if (ex == null) { return; } Console.Error.WriteLine("SafeFireAndForget: Exception - " + $"Message={ex.Message} -- StackTrace={ex.StackTrace}"); }); MainPage = new NavigationPage(new MainPage()); }
public async Task SafeFireAndForgetT_SetDefaultExceptionHandling_WithParams() { //Arrange Exception?exception1 = null; NullReferenceException?exception2 = null; SafeFireAndForgetExtensions.SetDefaultExceptionHandling(ex => exception1 = ex); //Act NoParameterDelayedNullReferenceExceptionTask().SafeFireAndForget <NullReferenceException>(onException: ex => exception2 = ex); await NoParameterTask(); await NoParameterTask(); //Assert Assert.IsNotNull(exception1); Assert.IsNotNull(exception2); }
// Initialization code. Don't use any Avalonia, third-party APIs or any // SynchronizationContext-reliant code before AppMain is called: things aren't initialized // yet and stuff might break. public static void Main(string[] args) { FixCurrentDirectory(); if (ProgramBootstrap.TryLaunchUpdaterIfNeeded()) { return; } System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture; SafeFireAndForgetExtensions.SetDefaultExceptionHandling(Console.WriteLine); var app = BuildAvaloniaApp(); try { app.StartWithClassicDesktopLifetime(args); } catch (Exception e) { FatalErrorHandler.ExceptionOccured(e); } }
private void ApplicationSetup() { #if DEBUG SafeFireAndForgetExtensions.Initialize(true); #endif VersionTracking.Track(); if (VersionTracking.IsFirstLaunchEver) { } var directoryPath = Path.Combine(FileSystem.AppDataDirectory, Configuration.FavoriteThumbnailsFolderName); if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); } directoryPath = Path.Combine(FileSystem.AppDataDirectory, Configuration.SnaphotsFolderName); if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); } }
public void BeforeEachTest() { SafeFireAndForgetExtensions.Initialize(false); SafeFireAndForgetExtensions.RemoveDefaultExceptionHandling(); }
public void AfterEachTest() { SafeFireAndForgetExtensions.Initialize(false); SafeFireAndForgetExtensions.SetDefaultExceptionHandling(null); }