可能重复
Stop saving photos using Android native camera
大家好,
我用这种方式打开摄像机

Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, ACTIVITY_CAMERA);

这很好,给我的结果很完美,但是,问题是这也会将图像保存到SDCard中,如何防止这种情况停止保存图像,并将这些数据使用到onActivityResult()方法中

最佳答案

我不确定,但试试看。可能对你有帮助。
在ActivityResult中,我将拍摄图像,然后将其存储到另一个位图中。
看到这个:

if(resultCode == RESULT_OK && requestCode==TAKE_PHOTO_CODE){
         final File file = getTempFile(this);
         try {
             tempBitmap = Media.getBitmap(getContentResolver(), Uri.fromFile(file));
             photoBitmap = Bitmap.createScaledBitmap(tempBitmap, display.getWidth(), display.getHeight(), true);
             takePhotoFromCamera = true;
             // do whatever you want with the bitmap (Resize, Rename, Add To Gallery, etc)
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

现在,您可以在将该文件放入位图后删除它。所以它可能不会保存到SD卡上。
试试看。希望对你有帮助。
或者。…
使用此:
获取用户最后一张照片的代码:
String[] projection = new String[]
{MediaStore.Images.ImageColumns._ID, MediaStore.Images.ImageColumns.DATA,
 MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
 DATE_TAKEN, MediaStore.Images.ImageColumns.MIME_TYPE};

final Cursor cursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
                                   projection, null, null, DATE_TAKEN + " DESC");

在得到图像后,删除它。所以这对你有帮助。
享受。:)

07-28 02:09
查看更多