2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00
2025-06-14 10:01:19 +08:00

dumon-geolocation

Plugin Capacitor Android untuk positioning real-time berbasis GNSS multi-konstelasi, Wi-Fi RTT/RSSI, dan IMU (Accelerometer + Gyroscope), dilengkapi dengan sensor fusion (Kalman Filter) dan deteksi lokasi palsu.

📦 Install

npm install dumon-geolocation
npx cap sync

🚀 API

📡 startPositioning()

startPositioning() => Promise<void>

Memulai pengambilan data posisi secara real-time dari GNSS, Wi-Fi, dan IMU.


🛑 stopPositioning()

stopPositioning() => Promise<void>

Menghentikan semua sensor dan positioning.


📍 getLatestPosition()

getLatestPosition() => Promise<PositioningData>

Mengembalikan data posisi terkini yang telah difusi.


🔄 addListener('onPositionUpdate', ...)

addListener(eventName: 'onPositionUpdate', listenerFunc: (data: PositioningData) => void): PluginListenerHandle

Listener untuk update posisi secara berkala (real-time).


🧾 Interfaces

PositioningData

interface PositioningData {
  source: 'GNSS' | 'WIFI' | 'FUSED' | 'MOCK';
  latitude: number;
  longitude: number;
  accuracy: number;
  speed: number;
  acceleration: number;
  directionRad: number;
  timestamp: number;
  isMocked: boolean;

  // Optional raw sensor data (available internally)
  // imuData?: ImuData;
  // gnssData?: SatelliteStatus;
  // wifiData?: WifiAp[];
}

ImuData

interface ImuData {
  accelX: number;
  accelY: number;
  accelZ: number;
  gyroX: number;
  gyroY: number;
  gyroZ: number;
  speed: number;
  acceleration: number;
  directionRad: number;
}

SatelliteStatus

interface SatelliteStatus {
  satellitesInView: number;
  usedInFix: number;
  constellationCounts: { [key: string]: number };
}

WifiAp

interface WifiAp {
  ssid: string;
  bssid: string;
  rssi: number;
  distance?: number;
}

PluginListenerHandle

interface PluginListenerHandle {
  remove: () => Promise<void>;
}

Catatan

  • Plugin hanya mendukung platform Android saat ini.
  • Ideal digunakan bersama dengan plugin Geolocation bawaan Capacitor untuk fallback atau perbandingan.
  • Sensor fusion berbasis Kalman Filter (versi sederhana).
  • directionRad merujuk arah dalam radian relatif terhadap utara (azimuth).
  • Output isMocked berguna untuk deteksi lokasi palsu.

Lisensi: MIT Dibuat oleh Tim Dumon

Description
No description provided
Readme 871 KiB
Languages
Kotlin 81.3%
TypeScript 7.6%
JavaScript 6.5%
HTML 2.3%
Swift 1.4%
Other 0.9%