Zum Hauptinhalt springen
Zurück zu Plugins
@capgo/capacitor-Hintergrund-Ortung
Tutorial
@capgo/capacitor-Hintergrund-Ortungs-Plugin

Hintergrund-Ortungs-Plugin

Genauere Hintergrund-Ortung mit nativer iOS- und Android-Geofencing sowie Übergangs-Webhooks

Richtlinie

Tutorial zur Hintergrund-Geolokalisierung

Auf Gerät testen

Laden Sie die Capgo-App herunter, dann scannen Sie die QR-Code code.

Hintergrund-Geolokalisierung-Plugin-Vorschau-QR-Code code

Verwendung von @capgo/background-geolocation

Genauere Hintergrund-Geolokalisierung und native Geofencing für Capacitor-Apps auf iOS und Android. Verwenden Sie es, um präzise Standortaktualisierungen zu streamen, kreisförmige Regionen zu überwachen und geofence-Eintritts-/Ausgangsübergänge an JavaScript oder Ihren Backend zu liefern.

Installieren

bun add @capgo/background-geolocation
bunx cap sync

Was diese Erweiterung bereitstellt

  • start - Stream genaue Vorder- oder Hintergrundortdaten.
  • stop - Beenden Sie die aktive Standortverfolgung.
  • openSettings - Öffnen Sie die native Einstellungen, wenn Benutzer die Standortberechtigungen korrigieren müssen.
  • setPlannedRoute - Spielen Sie ein natives Geräusch, wenn der Benutzer eine geplante Route verlässt.
  • setupGeofencing - Konfigurieren Sie die native Geofence-Standardwerte und optional die Übergabe von Übergabe-Webhooks.
  • addGeofence - Überwachen Sie einen kreisförmigen iOS- oder Android-Geofence-Bereich.
  • removeGeofence / removeAllGeofences - Beenden Sie die Überwachung eines oder aller registrierten Bereiche.
  • getMonitoredGeofences - Listen Sie die identifizierten Regionen auf.
  • geofenceTransition listener - Empfangen Sie Eingabe- und Ausgabeevents, während die App aktiv ist.
  • geofenceError listener - Behandeln Sie native Überwachungsfehler separat von Übergabeereignissen.

Beispiel für die Verwendung

start

To starten Sie die Änderungen in der Geräteposition zu hören, rufen Sie diese Methode auf. Ein Versprechen wird zurückgegeben, um anzugeben, dass die Anrufung abgeschlossen ist. Der Callback wird aufgerufen, sobald eine neue Position verfügbar ist, oder wenn bei der Aufrufung dieser Methode ein Fehler aufgetreten ist. Verlassen Sie sich nicht auf die Ablehnung des Versprechens für dies.

import { BackgroundGeolocation } from '@capgo/background-geolocation';

await BackgroundGeolocation.start(
  {
    backgroundMessage: "App is using your location in the background",
    backgroundTitle: "Location Service",
    requestPermissions: true,
    stale: false,
    distanceFilter: 10
  },
  (location, error) => {
    if (error) {
      console.error('Location error:', error);
      return;
    }
    if (location) {
      console.log('New location:', location.latitude, location.longitude);
    }
  }
);

stop

Stellt die Standortaktualisierungen ein.

import { BackgroundGeolocation } from '@capgo/background-geolocation';

await BackgroundGeolocation.stop();

openSettings

Öffnet die Standorteinstellungen der Geräte. Nützlich, um Benutzer dazu zu leiten, die Standortdienste zu aktivieren oder die Berechtigungen anzupassen.

import { BackgroundGeolocation } from '@capgo/background-geolocation';

// Direct user to location settings
await BackgroundGeolocation.openSettings();

setPlannedRoute

Eine Tonaufnahme abspielen, wenn der Benutzer sich von der geplanten Route entfernt. Dies sollte verwendet werden, um eine Tonaufnahme (auch im Hintergrund, nur für native) abzuspielen.

import { BackgroundGeolocation } from '@capgo/background-geolocation';

await BackgroundGeolocation.setPlannedRoute({
  soundFile: "notification.mp3",
  route: [[-74.0060, 40.7128], [-118.2437, 34.0522]]
});

Native Geofencing

Überwachen Sie Geschäftsstellen, Baustellen, Lieferzonen, Campus oder Check-in-Bereiche mit native iOS- und Android-Geofences. Fügen Sie einen HTTP- oder HTTPS- url um native code POST-Übergabeobjekte während der Suspendierung des WebView zu ermöglichen.

import { BackgroundGeolocation } from '@capgo/background-geolocation';

await BackgroundGeolocation.setupGeofencing({
  url: 'https://api.example.com/geofences',
  notifyOnEntry: true,
  notifyOnExit: true,
  payload: { userId: '123' },
});

await BackgroundGeolocation.addGeofence({
  identifier: 'warehouse',
  latitude: 40.7128,
  longitude: -74.006,
  radius: 200,
});

const listener = await BackgroundGeolocation.addListener(
  'geofenceTransition',
  (event) => console.log(event.identifier, event.transition),
);

const errorListener = await BackgroundGeolocation.addListener(
  'geofenceError',
  (event) => console.error(event.identifier, event.message),
);

await BackgroundGeolocation.removeGeofence({ identifier: 'warehouse' });
await listener.remove();
await errorListener.remove();

Bei Android hinzufügen ACCESS_BACKGROUND_LOCATION zur App-Manifestdatei nur, wenn Sie Hintergrund-Geofencing benötigen:

<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

Vollständige Referenz

Weitermachen von Using @capgo/background-geolocation

Wenn Sie Using verwenden Using @capgo/background-geolocation um native Plugin-Arbeit zu planen, verbinden Sie es mit @capgo/background-geolocation für die Implementierungsdetails in @capgo/background-geolocation, Einstieg für die Implementierungsdetails in Einstieg, Capgo Plugin-Verzeichnis für den Produktworkflow in Capgo Plugin-Verzeichnis, Capacitor Plugins von Capgo für die Implementierungsdetails in Capacitor Plugins durch Capgo, und Plugins hinzufügen oder aktualisieren für die Implementierungsdetails in Plugins hinzufügen oder aktualisieren.