open method

Future<void> open({
  1. required BuildContext context,
  2. required double latitude,
  3. required double longitude,
})

Implementation

Future<void> open({
  required BuildContext context,
  required double latitude,
  required double longitude,
}) async {
  final appleUrl = appleMapsUrlBuilder(latitude, longitude);
  final googleUrl = googleMapsUrlBuilder(latitude, longitude);

  try {
    if (await canLaunchUrl(appleUrl)) {
      await launchUrl(appleUrl, mode: LaunchMode.externalApplication);
    } else if (await canLaunchUrl(googleUrl)) {
      await launchUrl(googleUrl, mode: LaunchMode.externalApplication);
    } else {
      if (context.mounted) {
        displayErrorSnack(context: context, message: errorMessage);
      }
    }
  } catch (e) {
    if (context.mounted) {
      displayErrorSnack(context: context, message: errorMessage);
    }
  }
}