reverseGeocodeAddress function

Future<String?> reverseGeocodeAddress(
  1. GeoPoint point, {
  2. String locale = "en",
})

Implementation

Future<String?> reverseGeocodeAddress(
  GeoPoint point, {
  String locale = "en",
}) async {
  try {
    final response = await Dio().get(
      "https://nominatim.openstreetmap.org/reverse",
      queryParameters: {
        "format": "jsonv2",
        "lat": point.latitude.toString(),
        "lon": point.longitude.toString(),
        if (locale.isNotEmpty) "accept-language": locale,
      },
    );
    final data = response.data;
    final displayName = data["display_name"];
    if (displayName is String && displayName.trim().isNotEmpty) {
      return displayName;
    }
  } catch (_) {
    return null;
  }
  return null;
}