在我的应用中,我需要拍照,然后通过RestApi与其他数据一起发送。我希望将此照片存储在其他位置以便将来处理。我的代码:
private void TakePictureAfterScan() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
TAKEN_PHOTO = Uri.fromFile(getOutputMediaFile());
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, TAKEN_PHOTO);
startActivityForResult(takePictureIntent, ACTIVITY_CODE_REQUEST_IMAGE_CAPTURE);
}
private static File getOutputMediaFile() {
File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES), PICTURE_PHOTO_DIR);
if (!mediaStorageDir.exists()) {
if (!mediaStorageDir.mkdirs()) {
return null;
}
}
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
return new File(mediaStorageDir.getPath() + File.separator +
"IMG_" + timeStamp + ".jpg");
}
当我在'onActivityResult'方法(现在为测试时为空)设置断点时,设备中已经保存了两个.jpg文件:
在DCIM /相机文件夹
在我的临时文件夹
问题是,两个文件都有不同的名称。我不需要也不想要DCIM / Camera文件夹中的文件。有没有简单的方法来保存仅在我的临时文件夹中拍摄照片?
答案 0 :(得分:0)
而不是这个。
File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES), PICTURE_PHOTO_DIR);
使用此.. ..
File mediaStorageDir = new File(Environment.getExternalStorageDirectory().toString() + "folder name" + ImageName;);