Skip to main content
Kembali ke Plugin
@capgo/capacitor-lokasi-kejadian-latar
Tutorial
@capgo/capacitor-lokasi-kejadian-latar

Lokasi Kejadian Latar

Pemetaan Lokasi Latar Belakang yang Akurat dengan Geofencing Nativ iOS dan Android serta Webhook Transisi

Panduan

Tutorial Lokasi Latar Belakang

Uji di Perangkat

Unduh aplikasi Capgo terlebih dahulu, kemudian scan kode QR code.

Tautan QR Pratinjau Plugin Lokasi Latar Belakang code

Menggunakan @capgo/background-geolocation

Lokasi Latar Belakang yang Akurat dan Pengaturan Geofence Asli untuk Aplikasi Capacitor di iOS dan Android. Gunakan untuk mengalirkan pembaruan lokasi yang tepat, memantau wilayah lingkaran, dan mengirimkan transisi masuk/keluar geofence ke JavaScript atau backend Anda.

Install

bun add @capgo/background-geolocation
bunx cap sync

Apa yang Dapat Diketahui Plugin Ini

  • start - Mengalirkan pembaruan lokasi aktif atau latar belakang yang akurat.
  • stop - Menghentikan pengukuran lokasi aktif.
  • openSettings - Membuka pengaturan asli native ketika pengguna perlu memperbaiki izin lokasi.
  • setPlannedRoute - Bermain suara native ketika pengguna meninggalkan rute yang direncanakan.
  • setupGeofencing - Mengonfigurasi pengaturan geofence native default dan pengiriman webhook transisi optional.
  • addGeofence - Mengawasi wilayah geofence berbentuk lingkaran di iOS atau Android.
  • removeGeofence / removeAllGeofences - Berhenti mengawasi satu atau semua wilayah yang telah terdaftar.
  • getMonitoredGeofences - Daftar identifikasi wilayah yang sedang diawasi.
  • geofenceTransition - listener - Terima event masuk dan keluar sementara aplikasi aktif.
  • geofenceError - listener - Tangani kesalahan pemantauan native secara terpisah dari event transisi.

- Contoh Penggunaan

start

- Untuk memulai mendengarkan perubahan lokasi perangkat, panggil metode ini. Sebuah Promise akan dikembalikan untuk menunjukkan bahwa panggilan telah selesai. Callback akan dipanggil setiap kali lokasi baru tersedia, atau jika terjadi kesalahan saat memanggil metode ini. Jangan bergantung pada penolakan promise untuk hal ini.

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

- Berhenti mengupdate lokasi.

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

await BackgroundGeolocation.stop();

openSettings

- Membuka halaman pengaturan lokasi perangkat. Berguna untuk mengarahkan pengguna untuk mengaktifkan layanan lokasi atau menyesuaikan izin.

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

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

setPlannedRoute

- Memainkan file suara ketika pengguna melenceng dari rute yang direncanakan. Hal ini harus digunakan untuk memainkan suara (di latar belakang juga, hanya untuk native).

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

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

- Geofencing native

- Mengawasi toko, lokasi kerja, zona pengiriman, kampus, atau area check-in dengan geofence native iOS dan Android. Tambahkan HTTP atau HTTPS url untuk memungkinkan native code POST transit payload sementara WebView dalam keadaan tertidur.

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();

On Android, tambahkan ACCESS_BACKGROUND_LOCATION ke dalam manifest aplikasi Anda hanya ketika Anda memerlukan geofencing latar belakang:

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

Referensi Lengkap

Teruskan dari Menggunakan @capgo/geolokasi-latar-belakang

Jika Anda menggunakan Menggunakan @capgo/geolokasi-latar-belakang untuk merencanakan kerja plugin native, hubungkan dengan @capgo/geolokasi-latar-belakang untuk detail implementasi di @capgo/background-geolocation, Mulai untuk detail implementasi di Mulai, Direktori Plugin Capgo untuk detail implementasi di Direktori Plugin Capgo, dan Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, and Footer Menggerakkan aplikasi __CAPGO_KEEP_0__ Anda dengan