getAddressesFromPositions static method

Future<List<String>> getAddressesFromPositions(
  1. List<Position> positions
)

Implementation

static Future<List<String>> getAddressesFromPositions(List<Position> positions) async {
  AppConfig.logger.d("Getting Addresses from ${positions.length} positions");

  List<String> addresses = [];
  List<Placemark> placemarks = await GeoLocatorController().getMultiplePlacemarks(positions);

  for(Placemark placemark in placemarks) {
    String country = placemark.country ?? "";
    String locality = placemark.locality ?? "";
    String address = "";

    if(locality.isNotEmpty && country.isNotEmpty) {
      address = "$locality, $country";
    } else if(locality.isNotEmpty) {
      address = locality;
    } else if (country.isNotEmpty) {
      address = country;
    }
    if(address.isNotEmpty) addresses.add(address);
  }

  return addresses;
}