getCurrentPosition static method

Future<Location> getCurrentPosition({
  1. int? samples,
  2. int? timeout,
  3. int? maximumAge,
  4. bool? persist,
  5. int? desiredAccuracy,
  6. JsonMap? extras,
})

Gets the current position.

Implementation

static Future<Location> getCurrentPosition({
  int? samples,
  int? timeout,
  int? maximumAge,
  bool? persist,
  int? desiredAccuracy,
  JsonMap? extras,
}) async {
  final payload = <String, dynamic>{
    if (samples != null) 'samples': samples,
    if (timeout != null) 'timeout': timeout,
    if (maximumAge != null) 'maximumAge': maximumAge,
    if (persist != null) 'persist': persist,
    if (desiredAccuracy != null) 'desiredAccuracy': desiredAccuracy,
    if (extras != null) 'extras': extras,
  };

  final result =
      await _methodChannel.invokeMethod('getCurrentPosition', payload);
  if (result is Map) {
    return Location.fromMap(Map<String, dynamic>.from(result));
  }
  throw PlatformException(
    code: 'INVALID_RESULT',
    message:
        'Expected location payload from native layer, got ${result.runtimeType}.',
    details: result,
  );
}