Exemple #1
0
 public void StopShipmentTracking()
 {
     _locationCommunicationTimer.Stop();
     _locationCommunicationTimer = null;
     _locationManager.RemoveUpdates(_locationListener);
     _locationListener.Dispose();
     _locationListener = null;
 }
Exemple #2
0
 public void StartShipmentTracking(Guid transportationId)
 {
     _configurationService.SetCurrentTransportationId(transportationId);
     _locationListener = new LocationListener();
     _locationManager.RequestLocationUpdates(_locationProvider, 1000, 0, _locationListener);
     _locationCommunicationTimer = new Timer {
         Interval = 2000
     };
     _locationCommunicationTimer.Elapsed += async delegate
     {
         var capturedLocations = _locationListener.GetCapturedLocations();
         if (capturedLocations.Any())
         {
             await _apiService.PostCapturedLocations(transportationId, capturedLocations);
         }
     };
     _locationCommunicationTimer.Start();
 }