watchLivePosition static method
Stream<Position?>
watchLivePosition(
{ - bool openSettingsIfDenied = false,
- LocationAccuracy accuracy = LocationAccuracy.high,
- int distanceFilter = 10,
})
Implementation
static Stream<Position?> watchLivePosition({
bool openSettingsIfDenied = false,
LocationAccuracy accuracy = LocationAccuracy.high,
int distanceFilter = 10,
}) async* {
final permission = await checkAndRequestPermission;
if (permission.isGranted) {
yield* Geolocator.getPositionStream(
locationSettings: LocationSettings(
accuracy: accuracy,
distanceFilter: distanceFilter,
),
);
} else {
if (openSettingsIfDenied && permission.permanentlyDenied) {
await openLocationSettings();
}
yield null;
}
}