setExposureMode method
Future<Map<String, dynamic> >
setExposureMode(
- ExposureMode exposureMode, [
- double? exposureCompensation
override
Set exposure mode and compensation
Implementation
@override
Future<Map<String, dynamic>> setExposureMode(ExposureMode exposureMode, [double? exposureCompensation]) async {
try {
if (kDebugMode) {
debugPrint('QuickQR Scanner: Setting exposure mode to ${exposureMode.value}');
}
final arguments = {
'exposureMode': exposureMode.value,
if (exposureCompensation != null) 'exposureCompensation': exposureCompensation,
};
final result = await methodChannel.invokeMethod<Map<Object?, Object?>>(
'setExposureMode',
arguments
);
final exposureState = Map<String, dynamic>.from(result ?? {});
if (kDebugMode) {
debugPrint('QuickQR Scanner: Exposure mode set - $exposureState');
}
return exposureState;
} on PlatformException catch (e) {
throw _handlePlatformException(e, 'setExposureMode');
} catch (e) {
throw ScannerException(
ScannerErrorCode.internalError,
'Failed to set exposure mode: $e',
);
}
}