protected virtual void TryFireEvent(CLRegionEventArgs args, GeofenceStatus status) { if (!(args.Region is CLCircularRegion native)) { return; } var region = FromNative(native); RegionStatusChanged?.Invoke(this, new GeofenceStatusChangedEventArgs(region, status)); }
protected virtual void DoBroadcast(CLRegionEventArgs args, GeofenceStatus status) { Debug.WriteLine("Firing geofence region event"); var native = args.Region as CLCircularRegion; if (native == null) { return; } var region = this.FromNative(native); this.RegionStatusChanged?.Invoke(this, new GeofenceStatusChangedEventArgs(region, status)); }
public async void RecordStatus(GeofenceRegion region, GeofenceStatus status) { var activity = new ModelsData.GeofenceActivity() { ActivityUtcDateTime = System.DateTime.UtcNow, Region = region.Identifier, Status = status.ToString(), GeofenceActivityId = System.Guid.NewGuid() }; activity.Longitude = currentLocation.Longitude; activity.Latitude = currentLocation.Latitude; await DataRetrievalService.WriteGeofencingActivityRecord(activity); await RefreshRecentGeofenceStatus(); }
public GeofenceException(string message, Exception innerException, GeofenceStatus status) : base(message, innerException) { Status = status; }
public GeofenceException(string message, GeofenceStatus status) : base(message) { Status = status; }
public GeofenceStatusChangedEventArgs(GeofenceRegion region, GeofenceStatus status) { this.Region = region; this.Status = status; }
protected virtual void DoBroadcast(CLRegionEventArgs args, GeofenceStatus status) { Debug.WriteLine("Firing geofence region event"); var native = args.Region as CLCircularRegion; if (native == null) return; var region = this.FromNative(native); this.RegionStatusChanged?.Invoke(this, new GeofenceStatusChangedEventArgs(region, status)); }
protected virtual void OnRegionStatusChanged(GeofenceRegion region, GeofenceStatus status) => RegionStatusChanged?.Invoke(this, new GeofenceStatusChangedEventArgs(region, status));