How to use the expo-location.startGeofencingAsync function in expo-location

To help you get started, we’ve selected a few expo-location examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github flow-typed / flow-typed / definitions / npm / expo-location_v5.x.x / flow_v0.104.x- / test_expo-location.js View on Github external
it('should raise an error when call function with invalid arguments', () => {
    // $ExpectError: first argument is required
    startGeofencingAsync();

    // $ExpectError: first argument mush be a string
    startGeofencingAsync(1337);

    startGeofencingAsync('taskName', [
      // $ExpectError: must be a region object
      69,
    ]);

    startGeofencingAsync('taskName', [
      {
        latitude: 14,
        longitude: 48,
        // $ExpectError: must be a number
        radius: '69',
      },
    ]);

    startGeofencingAsync('taskName', [
github flow-typed / flow-typed / definitions / npm / expo-location_v5.x.x / flow_v0.104.x- / test_expo-location.js View on Github external
radius: 69,
      },
    ]);

    startGeofencingAsync('taskName', [
      {
        latitude: 14,
        longitude: 48,
        radius: 69,
        identifier: 'id',
        notifyOnEnter: false,
        notifyOnExit: false,
      },
    ]);

    startGeofencingAsync('taskName').then(result => {
      (result: void);

      // $ExpectError: check any
      (result: string);
    });
  });
github flow-typed / flow-typed / definitions / npm / expo-location_v5.x.x / flow_v0.104.x- / test_expo-location.js View on Github external
startGeofencingAsync('taskName', [
      // $ExpectError: must be a region object
      69,
    ]);

    startGeofencingAsync('taskName', [
      {
        latitude: 14,
        longitude: 48,
        // $ExpectError: must be a number
        radius: '69',
      },
    ]);

    startGeofencingAsync('taskName', [
      // $ExpectError: `abc` prop is missing in Region
      {
        latitude: 14,
        longitude: 48,
        radius: 666,
        abc: 11,
      },
    ]);
  });
});
github expo / expo / home / screens / GeofencingScreen.js View on Github external
async () => {
        if (await Location.hasStartedGeofencingAsync(GEOFENCING_TASK)) {
          // update existing geofencing task
          await Location.startGeofencingAsync(GEOFENCING_TASK, this.state.geofencingRegions);
        }
      }
    );
github expo / expo / apps / native-component-list / src / screens / Location / GeofencingScreen.tsx View on Github external
onMapPress = async ({ nativeEvent: { coordinate } }: MapEvent) => {
    const geofencingRegions = [...this.state.geofencingRegions];

    geofencingRegions.push({
      identifier: `${coordinate.latitude},${coordinate.longitude}`,
      latitude: coordinate.latitude,
      longitude: coordinate.longitude,
      radius: 50,
    });
    this.setState({ geofencingRegions });

    if (await Location.hasStartedGeofencingAsync(GEOFENCING_TASK)) {
      // update existing geofencing task
      await Location.startGeofencingAsync(GEOFENCING_TASK, geofencingRegions);
    }
  }
github expo / expo / apps / native-component-list / src / screens / Location / GeofencingScreen.tsx View on Github external
toggleGeofencing = async () => {
    if (this.state.isGeofencing) {
      await Location.stopGeofencingAsync(GEOFENCING_TASK);
      this.setState({ geofencingRegions: [] });
    } else {
      await Location.startGeofencingAsync(GEOFENCING_TASK, this.state.geofencingRegions);
    }
    this.setState({ isGeofencing: !this.state.isGeofencing });
  }