проверьте это
Случай 1:
Uri newImageUri = null;
File path = new File(Environment.getExternalStorageDirectory().getPath() + "/Images/");
path.mkdirs();
boolean setWritable = false;
setWritable = path.setWritable(true, false);
File file = new File(path, "Image_Story_" + System.currentTimeMillis() + ".jpg");
newImageUri = Uri.fromFile(file);
Log.i("MainActivity", "new image uri to string is " + newImageUri.toString());
Log.i("MainActivity", "new image path is " + newImageUri.getPath());
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, newImageUri);
startActivityForResult(intent, REQUEST_CODE_CAPTURE_IMAGE);
Случай 2:
String fileName = "" + System.currentTimeMillis() + ".jpg";
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE, fileName);
values.put(MediaStore.Images.Media.DESCRIPTION, "Image capture by camera");
values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
Uri imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
Log.i("MainActivity", "new image uri to string is " + imageUri.toString());
Log.i("MainActivity", "new image path is " + imageUri.getPath());
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, REQUEST_CODE_CAPTURE_IMAGE);
Я могу сохранять изображения через камеру на Nexus S в обоихвышеупомянутые случаи В случае 1: a.Image хранится в пользовательской папке.б.Если «System.currentTimeMillis ()» изменить на («новая дата (). ToString ()»), изображение не будет сохранено, и камера не вернется к моей деятельности.(Возможно, потому что «System.currentTimeMillis» не имеет пробелов, а «new Date (). ToString ()» может содержать некоторые специальные символы и пробелы). В случае 2: a.Изображение сохраняется в папке камеры
Спасибо всем