Beispiel #1
0
 public void TestCleanUp()
 {
     if (BackgroundTaskHelper.IsBackgroundTaskRegistered("TaskName"))
     {
         BackgroundTaskHelper.Unregister("TaskName");
     }
 }
Beispiel #2
0
 private void UnRegisterTasks()
 {
     BackgroundTaskHelper.Unregister("SampleBackgroundTask");
     BackgroundTaskHelper.Unregister("ToastBackgroundTask");
     BackgroundTaskHelper.Unregister(TASK_NAME);
     register.Content = "Remember Me";
     Registered       = false;
 }
Beispiel #3
0
        /// <summary>
        /// 注销后台任务
        /// </summary>
        /// <param name="type">类型</param>
        public void UnRegisterBackgroundTask(string type)
        {
            string backgroundTaskName = $"{type}NotificationTask";

            if (BackgroundTaskHelper.IsBackgroundTaskRegistered(backgroundTaskName))
            {
                BackgroundTaskHelper.Unregister(backgroundTaskName);
            }
        }
Beispiel #4
0
        /// <summary>
        /// Depart event as a NetworkMonitorEventListener
        /// </summary>
        /// <param name="nme"> NetworkMonitorEvent depart </param>
        public virtual void deviceDeparture(DeviceMonitorEvent dme)
        {
            for (int i = 0; i < dme.DeviceCount; i++)
            {
                Debug.WriteLine("REMOVE: " + dme.getPathForContainerAt(i) + dme.getAddressAsStringAt(i));

                // kill the temp watcher
                BackgroundTaskHelper.Unregister(WatchTempBackgroundTaskName);
            }
        }
 public static void RegesterLiveTile(bool reg)
 {
     if (reg)
     {
         BackgroundTaskHelper.Register(typeof(LiveTileTask), new TimeTrigger(15, false), true);
     }
     else
     {
         BackgroundTaskHelper.Unregister(typeof(LiveTileTask));
     }
 }
 public void RegisterLiveTile(bool reg)
 {
     if (reg)
     {
         BackgroundTaskHelper.Register(typeof(LiveTileTask), new TimeTrigger(15, false), true, true, new SystemCondition(SystemConditionType.InternetAvailable));
     }
     else
     {
         BackgroundTaskHelper.Unregister(typeof(LiveTileTask));
     }
 }
 public void RegisterLogin(bool reg)
 {
     if (reg)
     {
         BackgroundTaskHelper.Register(typeof(LoginTask), new SystemTrigger(SystemTriggerType.NetworkStateChange, false), true, true);
     }
     else
     {
         BackgroundTaskHelper.Unregister(typeof(LoginTask));
     }
 }
Beispiel #8
0
        public void Test_BackgroundTaskHelper_Unregister()
        {
            BackgroundTaskHelper.Register("TaskName", new TimeTrigger(15, true));

            if (!BackgroundTaskHelper.IsBackgroundTaskRegistered("TaskName"))
            {
                Assert.Inconclusive("Task failed to register!");
            }

            BackgroundTaskHelper.Unregister("TaskName");

            Assert.IsFalse(BackgroundTaskHelper.IsBackgroundTaskRegistered("TaskName"));
        }
Beispiel #9
0
        public void UpdateWorkRegister()
        {
            var Timer_Condition = new IBackgroundCondition[] {
                new SystemCondition(SystemConditionType.FreeNetworkAvailable)
            };

            bool HasRegistered = BackgroundTaskHelper.IsBackgroundTaskRegistered(typeof(TileRefreshUtils));

            if (Enabled)
            {
                BackgroundTaskHelper.Register(typeof(TileRefreshUtils), new TimeTrigger(TimerSpan, false), false, true, Timer_Condition);
            }
            else if (HasRegistered)
            {
                BackgroundTaskHelper.Unregister(typeof(TileRefreshUtils));
            }
        }
        private void RegisterBackgroundTasks()
        {
            // Remove old Background Tasks
            if (BackgroundTaskHelper.IsBackgroundTaskRegistered("NewEpisodesBackgroundTask"))
            {
                BackgroundTaskHelper.Unregister("NewEpisodesBackgroundTask");
            }

            // Check if Background Task is already registered and register new ones
            if (!BackgroundTaskHelper.IsBackgroundTaskRegistered(typeof(NewEpisodesV2BackgroundTask)))
            {
                BackgroundTaskHelper.Register(
                    nameof(NewEpisodesV2BackgroundTask),
                    new TimeTrigger(15, false),
                    conditions: new SystemCondition(SystemConditionType.InternetAvailable)
                    );
            }
        }
        /// <summary>
        /// Unregister a background task specified by <paramref name="backgroundTask"/>
        /// </summary>
        /// <param name="backgroundTask">The background task to unregister</param>
        public static void UnregisterBackgroundTask(BackgroundTaskType backgroundTask = BackgroundTaskType.ANY)
        {
            switch (backgroundTask)
            {
            case BackgroundTaskType.ANY:
                BackgroundTaskHelper.Unregister(nameof(SyncBackgroundTask));
                BackgroundTaskHelper.Unregister(nameof(MarkAsCompletedBackgroundTask));
                break;

            case BackgroundTaskType.SYNC:
                BackgroundTaskHelper.Unregister(nameof(SyncBackgroundTask));
                break;

            case BackgroundTaskType.MARK_AS_COMPLETED:
                BackgroundTaskHelper.Unregister(nameof(MarkAsCompletedBackgroundTask));
                break;

            default:
                throw new ArgumentOutOfRangeException($"The provided BackgroundTaskType doesnt exists {backgroundTask}");
            }
        }
Beispiel #12
0
 private void UnregisterSpmButton_Click(object sender, RoutedEventArgs e)
 {
     BackgroundTaskHelper.Unregister(Constants.TestBackgroundTaskName);
     StatusMessage.Text = "Background Task Unregistered";
 }
Beispiel #13
0
 private void UnregisterMpmButton_Click(object sender, RoutedEventArgs e)
 {
     BackgroundTaskHelper.Unregister(nameof(TestBackgroundTask));
     StatusMessage.Text = "Background Task Unregistered";
 }
Beispiel #14
0
        /// <summary>
        /// 在应用程序由最终用户正常启动时进行调用。
        /// 将在启动应用程序以打开特定文件等情况下使用。
        /// </summary>
        /// <param name="e">有关启动请求和过程的详细信息。</param>
        protected override async void OnLaunched(LaunchActivatedEventArgs e)
        {
            if (e.Kind == ActivationKind.Protocol)
            {
                return;
            }


            var t = Task.Run(async() =>
            {
                if (BackgroundTaskHelper.IsBackgroundTaskRegistered(Consts.PodcastTaskName))
                {
                    // Background task already registered.
                    //Unregister
                    BackgroundTaskHelper.Unregister(Consts.PodcastTaskName);
                }
                // Check for background access (optional)
                await BackgroundExecutionManager.RequestAccessAsync();

                // Register (Multi Process) w/ Conditions.
                BackgroundTaskHelper.Register(Consts.PodcastTaskName, typeof(PodcastsFetcher).FullName, new TimeTrigger(Settings.Current.FetchInterval, false), true, true, new SystemCondition(SystemConditionType.InternetAvailable));
            });


            if (e.PrelaunchActivated == false)
            {
                TryDisablePrelaunch();
                if (Window.Current.Content == null)
                {
                    CreateRootFrame(e.PreviousExecutionState);
                }

                if (e.Arguments.StartsWith("as-music:", StringComparison.InvariantCultureIgnoreCase) && Uri.TryCreate(e.Arguments, UriKind.Absolute, out var u))
                {
                    await NavigateByProtocol(u);

                    return;
                }

                if (rootFrame.Content == null)
                {
                    // 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 (Settings.Current.WelcomeFinished)
                    {
                        rootFrame.Navigate(typeof(MainPage), e.Arguments);
                    }
                    else
                    {
                        rootFrame.Navigate(typeof(WelcomePage), e.Arguments);
                    }
                }
                // 确保当前窗口处于活动状态
                Window.Current.Activate();
            }
            else
            {
                CreateRootFrame(e.PreviousExecutionState);

                if (e.Arguments.StartsWith("as-music:", StringComparison.InvariantCultureIgnoreCase) && Uri.TryCreate(e.Arguments, UriKind.Absolute, out var u))
                {
                    await NavigateByProtocol(u);

                    return;
                }

                if (rootFrame.Content == null)
                {
                    // 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 (Settings.Current.WelcomeFinished)
                    {
                        rootFrame.Navigate(typeof(MainPage), e.Arguments);
                    }
                    else
                    {
                        rootFrame.Navigate(typeof(WelcomePage), e.Arguments);
                    }
                }
            }
        }
Beispiel #15
0
 /// <inheritdoc />
 public void StopBackupSyncTask()
 {
     BackgroundTaskHelper.Unregister(typeof(SyncBackupTask));
 }
Beispiel #16
0
 private void App_LeavingBackground(object sender, LeavingBackgroundEventArgs e)
 {
     BackgroundTaskHelper.Unregister(BackgroundTask_Notification);
 }
Beispiel #17
0
 /// <summary>
 /// Removes the socket background task if necessary.
 /// </summary>
 public static void removeBackgroundTask()
 {
     BackgroundTaskHelper.Unregister(BACKGROUND_TASK_NAME);
     Logger.Info("Unregistered the " + BACKGROUND_TASK_NAME + " background task.");
 }