m3_lightmeter/lib/data/camera_info_service.dart
2025-05-14 10:10:46 +02:00

33 lines
899 B
Dart

import 'package:flutter/foundation.dart';
import 'package:flutter/services.dart';
import 'package:lightmeter/data/analytics/analytics.dart';
class CameraInfoService {
@visibleForTesting
static const cameraInfoPlatformChannel = MethodChannel(
"com.vodemn.lightmeter.CameraInfoPlatformChannel.MethodChannel",
);
final LightmeterAnalytics analytics;
const CameraInfoService(this.analytics);
Future<int?> mainCameraEfl() async {
try {
final focalLength = await cameraInfoPlatformChannel.invokeMethod<double?>('mainCameraEfl');
return focalLength?.round();
} on PlatformException catch (e) {
analytics.logEvent(
e.code,
parameters: {
"message": "${e.message}",
"details": e.details.toString(),
},
);
return null;
} catch (e) {
analytics.logEvent(e.toString());
return null;
}
}
}