createCoordinatesUri static method

Uri createCoordinatesUri(
  1. double latitude,
  2. double longitude, [
  3. String? label
])

Returns a Uri that can be launched on the current platform to open a maps application showing coordinates (latitude and longitude).

Implementation

static Uri createCoordinatesUri(double latitude, double longitude,
    [String? label]) {
  Uri uri;

  if (kIsWeb) {
    uri = Uri.https('www.google.com', '/maps/search/',
        {'api': '1', 'query': '$latitude,$longitude'});
  } else if (Platform.isAndroid) {
    var query = '$latitude,$longitude';

    if (label != null) query += '($label)';

    uri = Uri(scheme: 'geo', host: '0,0', queryParameters: {'q': query});
  } else if (Platform.isIOS) {
    var params = {
      'll': '$latitude,$longitude',
      'q': label ?? '$latitude, $longitude',
    };

    uri = Uri.https('maps.apple.com', '/', params);
  } else {
    uri = Uri.https('www.google.com', '/maps/search/',
        {'api': '1', 'query': '$latitude,$longitude'});
  }

  return uri;
}