Я хотел бы помочь с сохранением фотографий, снятых с моей камеры, в определенную папку на SD-карте. Моя камера открывается, снимает фотографии и сохраняет их; но он сохраняет их в стандартной папке. Код у меня так как для:сохранение фотографий, сделанных в определенной папке
public class Camera extends Activity {
public static final int MEDIA_TYPE_IMAGE = 1;
public static final int MEDIA_TYPE_VIDEO = 2;
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
String Path;
private Uri fileUri;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle extras=getIntent().getExtras();
Path= extras.getString("Path");
Log.d("camear","path: "+Path);
//File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "MyCameraApp");
Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
this.startActivity(intent);
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
//mediaFile = new File(mediaStorageDir.getPath() + File.separator +"IMG_"+ timeStamp + ".jpg");
//fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);
Uri outputFileUri= Uri.fromFile(new File(Path+"/camera/"+timeStamp+".jpg"));// create a file to save the image
intent.putExtra("output", outputFileUri); // set the image file name
// start the image capture Intent
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
путь исходит от другой деятельности по применению, и он передает его значения в порядке. В предыдущем действии он создает папки, в которые я хочу сохранить фотографии.
Я рассмотрел следующий ответ и попытался реализовать некоторые из предложений: How to save images from Camera in Android to specific folder?. Одна вещь, которую я не пробовал, была в последнем предложении OnActivityResult. Это ключ или есть что-то еще, что мне не хватает? Эта страница здесь упоминает ContentResolver The Camera Intent is simply not working, одна вещь состоит в том, что обе страницы выглядят так, как будто они хотят сделать то же самое, но по-иному по-разному.
Paul, добавьте это 'intent.putExtra (MediaStore.EXTRA_OUTPUT, outputFileUri);' –
вы предлагаете добавить его в файл или заменить другие намерения.putExtra, которые у меня уже есть? Когда я пытаюсь добавить и заменить его, все равно делает то же самое. Используя мой отладчик, я вижу, что outputFileUri указывает на: file: /// mnt/sdcard/BucketMonkey/32rm215/camera. Это просто стандарт, чтобы добавить последний файл камеры в путь? У меня нет mkdir для пути, включая камеру, это будет причиной моей проблемы? –
Я не могу отредактировать свое предыдущее сообщение, но проигнорирую свой комментарий о том, что камера прикреплена к концу, это была моя собственная ошибка. Но даже если путь к законной папке, он по-прежнему сохраняется в основной папке камеры. –