ConstReadonlyPassThrough: 0No filtering — accept all samples. Useful for debugging.
ReadonlyAdjust: 1Balanced (default) — applies moderate filtering to reject noisy samples.
Dynamically adjusts acceptance thresholds for incoming samples, but never alters the raw latitude/longitude coordinates.
When using LocationFilterPolicy.Adjust (the default), the SDK computes motion metrics such as:
It then applies adaptive gating rules to decide whether each sample should be:
Coordinates are never modified. This policy adjusts which samples are included, not how they are positioned.
If LocationFilter.useKalman is enabled, additional smoothing may occur, but the physical coordinates of each accepted sample remain untouched.
ReadonlyConservative: 2Aggressive — filters heavily, preferring stability over responsiveness.
Defines the filtering policy applied to incoming raw GPS samples before they are accepted, averaged, or rejected by the LocationFilter.
The filtering policy determines how aggressively the plugin removes noisy, inaccurate, or redundant location updates. It represents the first stage in the SDK’s data-quality pipeline — before Kalman smoothing, burst averaging, or other denoising steps are applied.
Choosing the correct policy depends on your app’s tolerance for jitter versus responsiveness:
Profiles
Notes
Examples
Balanced default filtering:
No filtering — capture all raw locations:
Maximum smoothing for analytics:
See also