Skip to content

ProviderChangeEvent

export interface ProviderChangeEvent {

Location-services provider state delivered to BackgroundGeolocation.onProviderChange.

The SDK fires this event when the user changes location permissions, toggles device location settings, or — on iOS 14 and later — when the precision authorization level changes between full and reduced accuracy.

BackgroundGeolocation.onProviderChange((event) => {
  console.log("[onProviderChange]",
    "enabled:", event.enabled,
    "status:", event.status,
    "gps:", event.gps,
    "network:", event.network,
    "accuracyAuthorization:", event.accuracyAuthorization
  );

  if (!event.enabled) {
    // Prompt the user to re-enable location services.
  }
});

Members

accuracyAuthorization

accuracyAuthorization: number;

Precision location authorization level. Use the AccuracyAuthorization constants to interpret this value.

On iOS 14 and later this reflects whether the user has granted full or reduced accuracy. On Android this value is always AccuracyAuthorization.Full.

enabled

enabled: boolean;

true when the device has at least one location provider enabled.

gps

gps: boolean;

true when the GPS-based location provider is available.

network

network: boolean;

true when the network-based location provider is available.

status

status: number;

Platform authorization status code. Use the AuthorizationStatus constants to interpret this value.