capacitor-background-geolocation icon indicating copy to clipboard operation
capacitor-background-geolocation copied to clipboard

[Help Wanted]: Location with older age gets received while there are active locations posted by the plugin during that duration

Open mgravindran opened this issue 9 months ago • 0 comments

Required Reading

  • [x] Confirmed

Plugin Version

6.0.3

Mobile operating-system(s)

  • [x] iOS
  • [x] Android

What do you require assistance about?

Active tracking of locations is being done by the plugin and is posted to the configured URL. While there are active locations being posted, some locations with an older age gets posted (more or less near to the actual location at that point in time which was already posted). As a result of this when we draw the journey path (ordering by the timestamp + age), we see a lot of deviations with back and forth to a location older in time. Attaching data from a real user's live session.

[Optional] Plugin Code and/or Config

{
  "activityRecognitionInterval": 10000,
  "allowIdenticalLocations": false,
  "authorization": {},
  "autoSync": true,
  "autoSyncThreshold": 0,
  "backgroundPermissionRationale": {
    "title": "Allow {applicationName} to access this device's location even when closed or not in use?",
    "message": "[CHANGEME] This app collects location data for FEATURE X and FEATURE Y.",
    "positiveAction": "Change to \"{backgroundPermissionOptionLabel}\"",
    "negativeAction": ""
  },
  "batchSync": false,
  "configUrl": "",
  "crashDetector": {
    "enabled": false,
    "accelerometerThresholdHigh": 20,
    "accelerometerThresholdLow": 4.5,
    "gyroscopeThresholdHigh": 20,
    "gyroscopeThresholdLow": 4.5
  },
  "debug": false,
  "deferTime": 0,
  "desiredAccuracy": -1,
  "desiredOdometerAccuracy": 100,
  "disableAutoSyncOnCellular": false,
  "disableElasticity": false,
  "disableLocationAuthorizationAlert": false,
  "disableMotionActivityUpdates": false,
  "disableProviderChangeRecord": false,
  "disableStopDetection": false,
  "distanceFilter": 10,
  "elasticityMultiplier": 1,
  "enableHeadless": false,
  "enableTimestampMeta": false,
  "extras": {},
  "fastestLocationUpdateInterval": -1,
  "foregroundService": true,
  "geofenceInitialTriggerEntry": true,
  "geofenceModeHighAccuracy": false,
  "geofenceProximityRadius": 1000,
  "geofenceTemplate": "",
  "headers": {},
  "headlessJobService": "com.innbuilt.hrms.BackgroundGeolocationHeadlessTask",
  "heartbeatInterval": -1,
  "httpRootProperty": "location",
  "httpTimeout": 60000,
  "isMoving": false,
  "locationAuthorizationRequest": "Always",
  "locationTemplate": "",
  "locationTimeout": 60,
  "locationUpdateInterval": 1000,
  "locationsOrderDirection": "ASC",
  "logLevel": 5,
  "logMaxDays": 3,
  "maxBatchSize": -1,
  "maxDaysToPersist": 1,
  "maxMonitoredGeofences": 97,
  "maxRecordsToPersist": -1,
  "method": "POST",
  "minimumActivityRecognitionConfidence": 75,
  "motionTriggerDelay": 0,
  "notification": {
    "layout": "",
    "title": "",
    "text": "Location Service activated",
    "color": "",
    "channelName": "TSLocationManager",
    "channelId": "",
    "smallIcon": "",
    "largeIcon": "",
    "priority": -1,
    "sticky": false,
    "strings": {},
    "actions": []
  },
  "params": {},
  "persist": true,
  "persistMode": 2,
  "schedule": [],
  "scheduleUseAlarmManager": false,
  "speedJumpFilter": 300,
  "startOnBoot": false,
  "stationaryRadius": 25,
  "stopAfterElapsedMinutes": 0,
  "stopOnStationary": false,
  "stopOnTerminate": true,
  "stopTimeout": 5,
  "triggerActivities": "in_vehicle, on_bicycle, on_foot, running, walking",
  "url": "",
  "useSignificantChangesOnly": false,
  "enabled": false,
  "schedulerEnabled": false,
  "trackingMode": 1,
  "odometer": 130695.875,
  "isFirstBoot": false,
  "didLaunchInBackground": false,
  "didDeviceReboot": false
}

[Optional] Relevant log output


location.uuid | location.timestamp | location.age | location.odometer
-- | -- | -- | --
8759eb8b-aad9-4285-9782-4db2f09c6330 | 2025-03-13T03:02:15.731Z | 85 | 3660514.2
9676373a-4645-4505-835e-192dcc1dc802 | 2025-03-13T03:02:19.731Z | 3318286 | 3679561.5
9be48a0a-44ae-404f-9c4b-af97dbaf9466 | 2025-03-13T03:02:19.731Z | 66 | 3660548
fd7f11ab-e435-4a70-9205-cf019da2a383 | 2025-03-13T03:02:23.731Z | 3314294 | 3679561.5
d0d0d355-c59d-4517-a84d-86e9a1e91463 | 2025-03-13T03:02:23.731Z | 65 | 3660581.8
0190f124-e6db-4d20-ac3e-82657b80da24 | 2025-03-13T03:02:27.731Z | 3310300 | 3679561.5
d8055cf1-7226-4a9c-beff-24985f8116fc | 2025-03-13T03:02:27.731Z | 79 | 3660620.2
33edd03a-b2a0-40b0-a9b8-bf1f796960be | 2025-03-13T03:02:31.731Z | 3306320 | 3679561.5
97b69fd2-e03c-4b1d-adf0-2fd542c73a4c | 2025-03-13T03:02:31.731Z | 84 | 3660660.2
cf73d485-ee49-462e-99ec-052bda081409 | 2025-03-13T03:02:34.731Z | 3303339 | 3679561.5
66d4b257-e064-4f9d-8099-4f0c6b158065 | 2025-03-13T03:02:34.731Z | 76 | 3660692.2


mgravindran avatar Mar 17 '25 17:03 mgravindran