在android中以原始分辨率在应用程序内捕获照片

在android中以原始分辨率在应用程序内捕获照片,android,android-intent,android-camera,Android,Android Intent,Android Camera,我在android应用程序中使用照相机拍摄图像。捕获后,我将图片保存到特定文件夹中的移动内部/外部存储器中。问题是这些图片没有以相机通常的分辨率保存,它们的分辨率非常低 这是我的密码 Intent intent = new Intent( android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 0); @Override prot

我在android应用程序中使用照相机拍摄图像。捕获后,我将图片保存到特定文件夹中的移动内部/外部存储器中。问题是这些图片没有以相机通常的分辨率保存,它们的分辨率非常低

这是我的密码

Intent intent = new Intent(
                android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(intent, 0); 

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        Bitmap bp = (Bitmap) data.getExtras().get("data");

        /*********** Load Captured Image And Data Start ****************/
        String extr = Environment.getExternalStorageDirectory().toString()
                + File.separator + "ScannerMini";
        String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss")
                .format(new Date());
         imageName = timeStamp + ".jpg";

        if (Environment.MEDIA_MOUNTED.equals(state)) {
            // We can read and write the media
            myPath = new File(getExternalFilesDir(filepath), imageName);
            //File myPath = new File(extr, imageName);
        }
        else{
         myPath = new File(extr, imageName);
        }
        FileOutputStream fos = null;
        try {
            fos = new FileOutputStream(myPath);
            bp.compress(Bitmap.CompressFormat.JPEG, 100, fos);
            fos.flush();
            fos.close();

            MediaStore.Images.Media.insertImage(getApplicationContext()
                    .getContentResolver(), bp, myPath.getPath(), imageName);

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }


    }
有谁能告诉我,我该怎么做才能以原始分辨率保存图像。任何帮助都将不胜感激。谢谢:)

通过这样做,您将只得到一个缩略图图像。您需要在捕获意图中指定
MediaStore.EXTRA_OUTPUT
选项。这是存储捕获图像的路径。请参阅android文档

Bitmap bp = (Bitmap) data.getExtras().get("data");