pickImages method

  1. @override
Future<List<AdaptiveFile>> pickImages(
  1. PickerOptions options
)
override

Picks one or more images from the device gallery/photo picker.

Implementation

@override
Future<List<AdaptiveFile>> pickImages(PickerOptions options) async {
  final result = await methodChannel.invokeMethod<List<dynamic>>(
    'pickImages',
    {
      'mediaType': options.mediaType.name,
      'maxCount': options.maxCount ?? 1,
      'isMultiple': options.isMultiple,
    },
  );

  if (result == null || result.isEmpty) {
    return [];
  }

  return result.map<AdaptiveFile>((item) {
    if (item is Map) {
      return AdaptiveFile.fromMap(item);
    } else if (item is String) {
      return AdaptiveFile.fromPath(item);
    } else {
      throw FormatException('Unexpected item type from pickImages: ${item.runtimeType}');
    }
  }).toList();
}