mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2024-11-23 07:50:42 +00:00
ML-154 Improved EXIF errors reporting (#159)
* removed unused analytics event & added `logCrash` * added analytics to `RemoteConfigService` * run app with `runZonedGuarded` * added crash logging to `CameraContainerBloc` * log product id for IAP errors * typo * log crashes in `RemoteConfigService` * ignore silent `FlutterError` * fixed `evFromImage` test * fixed `showBuyProDialog` test * log errors in console * depend on iap 0.7.2 * Made errors non-fatal by default * improved EXIF errors reporting * fixed tests
This commit is contained in:
parent
4f4b6cf1eb
commit
a1ce17d675
2 changed files with 9 additions and 2 deletions
|
@ -10,7 +10,14 @@ Future<double> evFromImage(Uint8List bytes) async {
|
||||||
final apertureValueRatio = (tags["EXIF FNumber"]?.values as IfdRatios?)?.ratios.first;
|
final apertureValueRatio = (tags["EXIF FNumber"]?.values as IfdRatios?)?.ratios.first;
|
||||||
final speedValueRatio = (tags["EXIF ExposureTime"]?.values as IfdRatios?)?.ratios.first;
|
final speedValueRatio = (tags["EXIF ExposureTime"]?.values as IfdRatios?)?.ratios.first;
|
||||||
if (iso == null || apertureValueRatio == null || speedValueRatio == null) {
|
if (iso == null || apertureValueRatio == null || speedValueRatio == null) {
|
||||||
throw FlutterError('Error parsing EXIF: ${tags.keys}');
|
throw ArgumentError(
|
||||||
|
'Error parsing EXIF: ${tags.keys.join(', ')}',
|
||||||
|
[
|
||||||
|
if (iso == null) 'EXIF ISOSpeedRatings',
|
||||||
|
if (apertureValueRatio == null) 'EXIF FNumber',
|
||||||
|
if (speedValueRatio == null) 'EXIF ExposureTime',
|
||||||
|
].join(', '),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
final aperture = apertureValueRatio.numerator / apertureValueRatio.denominator;
|
final aperture = apertureValueRatio.numerator / apertureValueRatio.denominator;
|
||||||
|
|
|
@ -17,7 +17,7 @@ void main() {
|
||||||
'no EXIF',
|
'no EXIF',
|
||||||
() {
|
() {
|
||||||
final bytes = File('assets/launcher_icon_dev_512.png').readAsBytesSync();
|
final bytes = File('assets/launcher_icon_dev_512.png').readAsBytesSync();
|
||||||
expectLater(evFromImage(bytes), throwsFlutterError);
|
expectLater(evFromImage(bytes), throwsArgumentError);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue