Я делаю фотографию с последней версией плагина камеры и использую код из примера флаттера. Вот как я выбираю камеру:
final cameras = await availableCameras();
final firstCamera = cameras.first;
Это внутри init:
_cameraController = CameraController(
widget.camera,
ResolutionPreset.medium,
enableAudio: false,
);
Это остальная часть соответствующего кода:
Future _takePhoto(BuildContext context) async {
try {
await _initializeControllerFuture;
final path = join(
(await getTemporaryDirectory()).path,
'${DateTime.now()}.png',
);
await _cameraController.takePicture(path);
setState(() {
_imagePath = path;
});
} catch (e) {
print(e);
}
}
Впоследствии , Я показываю фотографию пользователю с Image.file(File(_imagePath))
и позже отправляю фотографию в API. Проблема в том, что фотография иногда получается с неправильной ориентацией. (Я уверен в этом, потому что фотография также поворачивается в базе данных.) Например, на 3-летнем телефоне Xiaomi он работает безупречно, но на определенном новом телефоне Samsung фотография всегда поворачивается.
Как убедиться, что вращение всегда правильно? (Даже на ios устройствах)