Растровое изображение Android не получает максимальное разрешение

В настоящее время я делаю приложение для Android-фотографии. В моем фрагменте загрузки у меня есть намерение камеры и галереи, однако, когда я отображаю изображение в виде изображения, качество изображения снижается. вот мой код:

    public void CameraIntent(){
    cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    file = new File(Environment.getExternalStorageDirectory(),
            "file"+String.valueOf(System.currentTimeMillis())+".jpg");
    uri = Uri.fromFile(file);
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT , uri);
    cameraIntent.putExtra("return-data",true);
    startActivityForResult(cameraIntent,0);
}
public void GalleryIntent(){
    galleryIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
    startActivityForResult(Intent.createChooser(galleryIntent,"Select Image from Gallery"),2);
}
    public void cropImage(){
    try{
        CropIntent = new Intent("com.android.camera.action.CROP");
        CropIntent.setDataAndType(uri,"image/*");

        CropIntent.putExtra("crop","true");
        CropIntent.putExtra("outputX",180);
        CropIntent.putExtra("outputY",180);
        CropIntent.putExtra("aspectX",3);
        CropIntent.putExtra("aspectY",3);
        CropIntent.putExtra("scaleUpIfNeeded",true);
        CropIntent.putExtra("return-data",true);

        startActivityForResult(CropIntent,1);
    }
    catch (ActivityNotFoundException ex)
    {
        ex.printStackTrace();
    }
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(requestCode == 0 && resultCode == RESULT_OK) {
        cropImage();
    }
    else if(requestCode == 2)
    {
        if(data != null)
        {
            uri = data.getData();
            cropImage();
        }
    }
    else if (requestCode == 1 && resultCode == RESULT_OK)
    {
        if(data != null)
        {
            bundle = data.getExtras();
            UriF = data.getData();

            bitmap = (Bitmap)data.getExtras().get("data");
            imageView.setImageBitmap(bitmap);
            seePreview.setEnabled(true);
            submitUpload.setEnabled(true);
            seePreview.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    titleS = title.getText().toString();
                    descriptionS = description.getText().toString();
                    openPreview(titleS , descriptionS , bitmap, UriF);
                }
            });
            submitUpload.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    submit(bitmap);
                }
            });
        }
    }

Я заметил значительную потерю качества. вот собственно фото: актуальное фото

Вот как это выглядело, когда я помещал его в изображение. Фото после перехода к изображению.

Есть существенное изменение качества. я попытался использовать URI, однако UriF = data.getdata() возвращает ноль.

0 ответов

Другие вопросы по тегам