SnapDotNet.Apps.App.OnLaunched C# (CSharp) Method

OnLaunched() protected method

Invoked when the application is launched normally by the end user. Other entry points will be used when the application is launched to open a specific file, to display search results, and so forth.
protected OnLaunched ( LaunchActivatedEventArgs e ) : void
e Windows.ApplicationModel.Activation.LaunchActivatedEventArgs Details about the launch request and process.
return void
		protected override void OnLaunched(LaunchActivatedEventArgs e)
		{
#if DEBUG
			if (Debugger.IsAttached)
			{
				DebugSettings.EnableFrameRateCounter = true;
			}
#endif

			var rootFrame = Window.Current.Content as Frame;

			// Do not repeat app initialization when the Window already has content,
			// just ensure that the window is active
			if (rootFrame == null)
			{
				// Create a Frame to act as the navigation context and navigate to the first page
				rootFrame = new Frame
				{
					// TODO: change this value to a cache size
					CacheSize = 2
				};

				if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
				{
					// TODO: Load state from previously suspended instance
				}

				// Place the frame in the current Window
				Window.Current.Content = rootFrame;
			}
			
			// Create events
			CurrentFrame.Navigating += CurrentFrameOnNavigating;

			if (rootFrame.Content == null)
			{
#if WINDOWS_PHONE_APP
				// Removes the turnstile navigation for startup.
				if (rootFrame.ContentTransitions != null)
				{
					_transitions = new TransitionCollection();
					foreach (var c in rootFrame.ContentTransitions)
					{
						_transitions.Add(c);
					}
				}

				rootFrame.ContentTransitions = null;
				rootFrame.Navigated += RootFrame_FirstNavigated;
#endif

				// When the navigation stack isn't restored navigate to the first page,
				// configuring the new page by passing required information as a navigation
				// parameter
				if (!rootFrame.Navigate(typeof (StartPage), e.Arguments))
				{
					throw new Exception("Failed to create initial page");
				}
			}
			
			// Register for Push Notifications
			InitNotificationsAsync();

			// Update Live Tile
			UpdateLiveTile();
			
#if WINDOWS_PHONE_APP
			// Hide StatusBar background for entire application
			ApplicationView.GetForCurrentView().SetDesiredBoundsMode(ApplicationViewBoundsMode.UseCoreWindow);
#endif

			// Ensure the current window is active
			Window.Current.Activate();
		}