大家好,我是这样使用Intent打开相机的
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, ACTIVITY_CAMERA);
很好,给了我完美的结果,但是问题是这也会将图像保存到 sdcard 中,如何防止这种情况停止保存图像并将该数据用于onActivityResult()
方法中
大家好,我是这样使用Intent打开相机的
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, ACTIVITY_CAMERA);
很好,给了我完美的结果,但是问题是这也会将图像保存到 sdcard 中,如何防止这种情况停止保存图像并将该数据用于onActivityResult()
方法中
我不确定,但试试吧。可能对你有帮助。
onActivityResult 我正在拍摄图像,然后将其存储到另一个位图中。
看到这个:
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();
}
}
现在,您可以在将文件带到位图后将其删除。所以它可能没有保存到sdcard。
试试看。希望它会帮助你。
或者 。. .
用这个:
获取用户拍摄的最后一张照片的代码:
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");
获得该图像后,将其删除。所以它会帮助你。
享受。:))