Exemple #1
0
        public async Task Start()
        {
            _cts = new CancellationTokenSource();
            StaticObjects.IsCollecting = true;
            _taskId = UIApplication.SharedApplication.BeginBackgroundTask("LongRunningTask", OnExpiration);

            try
            {
                var net = new SensorCollectionManager();
                //await net.PhoneSensorOperationsAsync(_cts.Token);
            }
            catch (OperationCanceledException)
            {
            }
            finally
            {
                if (_cts.IsCancellationRequested)
                {
                    var message = new CancelledMessage();
                    Device.BeginInvokeOnMainThread(
                        () => MessagingCenter.Send(message, "CancelledMessage")
                        );
                }
            }

            UIApplication.SharedApplication.EndBackgroundTask(_taskId);
        }
Exemple #2
0
 private void CollectionService()
 {
     Task.Run(() =>
     {
         try
         {
             if (!isRunning)
             {
                 var sen = new SensorCollectionManager();
                 //sen.PhoneSensorOperationsAsync(_cts.Token);
             }
         }
         catch (Exception ex)
         {
             ExceptionErrorLogger.writeFileOnInternalStorage(ex.ToString());
         }
         finally
         {
             if (_cts.IsCancellationRequested)
             {
                 var message = new CancelledMessage();
                 Device.BeginInvokeOnMainThread(
                     () => MessagingCenter.Send(message, "CancelledMessage")
                     );
             }
         }
     }, _cts.Token);
 }