capturePhoto method

  1. @override
Future<PickedFile?> capturePhoto({
  1. required bool allowCompression,
  2. required int compressionQuality,
  3. required bool withData,
})
override

Captures a photo using the device camera.

Platform implementations should override this method to handle camera capture on their respective platforms.

Implementation

@override
Future<PickedFile?> capturePhoto({
  required bool allowCompression,
  required int compressionQuality,
  required bool withData,
}) async {
  try {
    final result = await methodChannel
        .invokeMethod<Map<dynamic, dynamic>>('capturePhoto', {
          'allowCompression': allowCompression,
          'compressionQuality': compressionQuality,
          'withData': withData,
        });

    if (result == null) return null;

    return PickedFile.fromMap(Map<String, dynamic>.from(result));
  } on PlatformException {
    return null;
  }
}