-
@Serializable() public final class GeofenceConfigurationServer-driven tuning for in-SDK route geofencing (mirrors iOS
GeofenceConfiguration). All fields default to the proven DoorstepCompanion values so older config responses (without ageofenceblock) keep working unchanged. Consumed via com.doorstepai.sdks.tracking.internal.geofence.GeofenceParams.fromRemoteConfig.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classGeofenceConfiguration.Companion
-
Field Summary
Fields Modifier and Type Field Description private final Booleanenabledprivate final FloatdefaultRadiusMetersprivate final IntegermaxActiveGeofencesprivate final FloatreRegisterThresholdMetersprivate final FloatnearDistanceMetersprivate final FloatenterMaxAccuracyMetersprivate final FloatexitMaxAccuracyMetersprivate final FloatexitHysteresisMetersprivate final IntegerexitDebounceFixesprivate final DoublesessionTimeoutSecondsprivate final LongnearIntervalMsprivate final LongfarIntervalMsprivate final IntegerresponsivenessMs
-
Constructor Summary
Constructors Constructor Description GeofenceConfiguration(Boolean enabled, Float defaultRadiusMeters, Integer maxActiveGeofences, Float reRegisterThresholdMeters, Float nearDistanceMeters, Float enterMaxAccuracyMeters, Float exitMaxAccuracyMeters, Float exitHysteresisMeters, Integer exitDebounceFixes, Double sessionTimeoutSeconds, Long nearIntervalMs, Long farIntervalMs, Integer responsivenessMs)
-
Method Summary
Modifier and Type Method Description final BooleangetEnabled()Feature flag. final FloatgetDefaultRadiusMeters()Default geofence radius (meters) for stops that don't set their own. final IntegergetMaxActiveGeofences()Max geofences registered at once. final FloatgetReRegisterThresholdMeters()Re-register the nearest-N set once the driver moves this far (meters). final FloatgetNearDistanceMeters()Within this distance (meters) of any stop, use the dense/high-accuracy cadence. final FloatgetEnterMaxAccuracyMeters()ENTER accuracy gate (meters) — looser; missing an ENTER loses a delivery. final FloatgetExitMaxAccuracyMeters()EXIT accuracy gate (meters) — strict; a false EXIT loses data. final FloatgetExitHysteresisMeters()Hysteresis (meters) added to the radius for the app-side EXIT (ENTER at r, EXIT past r+this). final IntegergetExitDebounceFixes()Consecutive out-of-range fixes required before an app-side EXIT. final DoublegetSessionTimeoutSeconds()Backstop timeout (seconds) for a geofence-started session: the SDK force-stops it this long after start even if no dropoff + EXIT ever arrives (e.g. final LonggetNearIntervalMs()Fused-location update interval (ms) when NEAR a stop. final LonggetFarIntervalMs()Fused-location update interval (ms) when FAR from every stop. final IntegergetResponsivenessMs()Play Services geofence responsiveness hint (ms) — lower = faster transitions. -
-
Constructor Detail
-
GeofenceConfiguration
GeofenceConfiguration(Boolean enabled, Float defaultRadiusMeters, Integer maxActiveGeofences, Float reRegisterThresholdMeters, Float nearDistanceMeters, Float enterMaxAccuracyMeters, Float exitMaxAccuracyMeters, Float exitHysteresisMeters, Integer exitDebounceFixes, Double sessionTimeoutSeconds, Long nearIntervalMs, Long farIntervalMs, Integer responsivenessMs)
-
-
Method Detail
-
getEnabled
final Boolean getEnabled()
Feature flag. When false, com.doorstepai.sdks.tracking.DoorstepAI.startRouteGeofencing no-ops.
-
getDefaultRadiusMeters
final Float getDefaultRadiusMeters()
Default geofence radius (meters) for stops that don't set their own.
-
getMaxActiveGeofences
final Integer getMaxActiveGeofences()
Max geofences registered at once. Android caps at 100; we leave headroom (95).
-
getReRegisterThresholdMeters
final Float getReRegisterThresholdMeters()
Re-register the nearest-N set once the driver moves this far (meters).
-
getNearDistanceMeters
final Float getNearDistanceMeters()
Within this distance (meters) of any stop, use the dense/high-accuracy cadence.
-
getEnterMaxAccuracyMeters
final Float getEnterMaxAccuracyMeters()
ENTER accuracy gate (meters) — looser; missing an ENTER loses a delivery.
-
getExitMaxAccuracyMeters
final Float getExitMaxAccuracyMeters()
EXIT accuracy gate (meters) — strict; a false EXIT loses data.
-
getExitHysteresisMeters
final Float getExitHysteresisMeters()
Hysteresis (meters) added to the radius for the app-side EXIT (ENTER at r, EXIT past r+this).
-
getExitDebounceFixes
final Integer getExitDebounceFixes()
Consecutive out-of-range fixes required before an app-side EXIT.
-
getSessionTimeoutSeconds
final Double getSessionTimeoutSeconds()
Backstop timeout (seconds) for a geofence-started session: the SDK force-stops it this long after start even if no dropoff + EXIT ever arrives (e.g. a drive-past, or a delivery the driver never marked). A per-route com.doorstepai.sdks.tracking.RouteGeofenceOptions.timeoutSeconds overrides this. Backed by a Doze-safe AlarmManager alarm so it survives process death.
-
getNearIntervalMs
final Long getNearIntervalMs()
Fused-location update interval (ms) when NEAR a stop.
-
getFarIntervalMs
final Long getFarIntervalMs()
Fused-location update interval (ms) when FAR from every stop.
-
getResponsivenessMs
final Integer getResponsivenessMs()
Play Services geofence responsiveness hint (ms) — lower = faster transitions.
-
-
-
-