switchCamera method
Implementation
Future<void> switchCamera() async {
isCameraReady.value = false;
isCameraSwitching.value = true; // Start switching
try {
cameraLensDirection = cameraLensDirection == CameraLensDirection.front
? CameraLensDirection.back
: CameraLensDirection.front;
if (cameraController != null) {
await cameraController?.dispose();
cameraController = null;
}
await _initCamera();
// Notify that the camera is ready
isCameraReady.value = cameraController?.value.isInitialized ?? false;
// Set the camera switch state to false (finished switching)
isCameraSwitching.value = false;
} catch (e) {
Utills.printLogs("Error switching camera: $e");
isCameraSwitching.value = false; // Set switching state to false on error
}
}