private async Task HandleAppCloseAsync(AppCloseEvent closeEvent)
		{
			if (false == await _registrationController.GetIsRegisteredAsync())
			{
				return;
			}

			var rawStartTime = _persistentStorage.Get(START_TIME_KEY);
			DateTime? startTime = null;
			var trigger = LaunchReason.NotDefined;
			if (!String.IsNullOrEmpty(rawStartTime))
			{
				startTime = DateTime.Parse(rawStartTime);
				trigger = (LaunchReason) Enum.Parse(typeof (LaunchReason), _persistentStorage.Get(SESSION_TRIGGER));
			}

			if (startTime.HasValue)
			{
				var notification = new AppSessionClientNotification
				{
					StartTimeUtc = startTime.Value,
					EndTimeUtc = closeEvent.Timestamp,
					OperatingSystem = _environmentInformation.OperatingSystem,
					SessionTrigger = trigger
				};

				_persistentStorage.Set(START_TIME_KEY, String.Empty);
				_persistentStorage.Set(SESSION_TRIGGER, String.Empty);

				await _notificationManager.QueueClientNotificationAsync(notification);
			}
		}
		public void HandleAppClose(AppCloseEvent closeEvent)
		{
			HandleAppCloseAsync(closeEvent).ExecuteInBackground();
		}