Как определить координаты снимка, направление камеры (север, юг итд) в Android CameraX API?
Имплементировал 2 кейса из CameraX API: превью и создание снимка. Теперь стоит задача по добавлению геопозиции сделанной фотографии и направление камеры (север, юг, запад, восток). Толковых инструкций я пока что не нашел, прошу подсказать как сохранять вышеописанные параметры в metadata фотографии. Вот фрагмент кода в котором обрабатывается конфигурация фотографии и осуществляется запись .png в память телефона:
ImageCaptureConfig imageCaptureConfig = new ImageCaptureConfig.Builder()
.setCaptureMode(ImageCapture.CaptureMode.MIN_LATENCY)
.setTargetRotation(getWindowManager().getDefaultDisplay().getRotation())
.build();
final ImageCapture imgCap = new ImageCapture(imageCaptureConfig);
findViewById(R.id.takePicture).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
File file = new File(Environment.getExternalStorageDirectory() + "/" + System.currentTimeMillis() + ".png");
imgCap.takePicture(file, new ImageCapture.OnImageSavedListener() {
@Override
public void onImageSaved(@NonNull File file) {
String msg = "Pic captured at " + file.getAbsolutePath();
Toast.makeText(getBaseContext(), msg,Toast.LENGTH_LONG).show();
}
@Override
public void onError(@NonNull ImageCapture.UseCaseError useCaseError, @NonNull String message, @Nullable Throwable cause) {
String msg = "Pic capture failed : " + message;
Toast.makeText(getBaseContext(), msg,Toast.LENGTH_LONG).show();
if(cause != null){
cause.printStackTrace();
}
}
});
}
});