public void StartLocationTracker() { if( CanRunAsTask() ) { BackgroundTaskBuilder geolocTaskBuilder = new BackgroundTaskBuilder(); geolocTaskBuilder.Name = SampleBackgroundTaskName; geolocTaskBuilder.TaskEntryPoint = SampleBackgroundTaskEntryPoint; // Create a new timer triggering at a 15 minute interval var trigger = new TimeTrigger( UpdateInterval, true ); // Associate the timer trigger with the background task builder geolocTaskBuilder.SetTrigger( trigger ); // Register the background task _geolocTask = geolocTaskBuilder.Register(); // Associate an event handler with the new background task _geolocTask.Completed += new BackgroundTaskCompletedEventHandler( OnCompleted ); } else { task = new LocationBackgroundTask(); timer = ThreadPoolTimer.CreatePeriodicTimer( TimerElapsed, new TimeSpan( TimeSpan.TicksPerMillisecond * 30000 ) ); } }
public void StartLocationTracker() { if (CanRunAsTask()) { BackgroundTaskBuilder geolocTaskBuilder = new BackgroundTaskBuilder(); geolocTaskBuilder.Name = SampleBackgroundTaskName; geolocTaskBuilder.TaskEntryPoint = SampleBackgroundTaskEntryPoint; // Create a new timer triggering at a 15 minute interval var trigger = new TimeTrigger(UpdateInterval, true); // Associate the timer trigger with the background task builder geolocTaskBuilder.SetTrigger(trigger); // Register the background task _geolocTask = geolocTaskBuilder.Register(); // Associate an event handler with the new background task _geolocTask.Completed += new BackgroundTaskCompletedEventHandler(OnCompleted); } else { task = new LocationBackgroundTask(); timer = ThreadPoolTimer.CreatePeriodicTimer(TimerElapsed, new TimeSpan(TimeSpan.TicksPerMillisecond * 30000)); } }