Надеюсь это поможет. дайте мне знать, если вы выберете эту процедуру и застряли где-то.

я есть кнопка, которая запускает захват изображения:

private void capturePicture() {
    if(ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED){
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        // Tiến hành gọi Capture Image intent
        startActivityForResult(intent, 100);
    } else ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.CAMERA}, 200);
}

Сразу после того, как я сделал снимок, я вижу снимок, и разрешение очень низкое. Он сохраняется в локальном хранилище, и когда он отображается в приложении, он не имеет оригинального качества.

private void loadImageFromStorage(String path, int position, Device device)
{

    try {
        File f=new File(path,device.getSerial()+".jpg");
        Bitmap b = BitmapFactory.decodeStream(new FileInputStream(f));
        imvDeviceImage.setImageBitmap(b);
    }
    catch (FileNotFoundException e)
    {
        e.printStackTrace();
    }

}

Здесь для разрешения

 if(ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED){
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

        startActivityForResult(intent, 100);
    } else ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.CAMERA}, 200);

Ответы на вопрос(1)

Ваш ответ на вопрос