Камера намерение андроид

1

Когда я начинаю намерение камеры, я даю ему имя файла, которое я бы хотел использовать. Когда я получаю это по телефону, он использует имя файла по умолчанию для телефонов. Что не помогает, поскольку мне нужно имя изображения позже в приложении.

Код намерения камеры...

public void onClick(View view) {
  String currentDateTimeString = DateFormat.getDateInstance().format(new Date());
  System.out.println(currentDateTimeString); 
  filename = ("/sdcard/" + currentDateTimeString + ".jpg");

  Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  File file = new File(Environment.getExternalStorageDirectory(), filename);

  outputFileUri = Uri.fromFile(file);
  intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
  startActivityForResult(intent, TAKE_PICTURE);
  filetype = "image/jpeg";

}
  • 0
    Джеймс, единственное различие, которое я вижу между кодом, который я использую, и вашим - это создание намерения. Вот моя строка Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
  • 0
    а твоя работа? с вашим именем файла?
Показать ещё 1 комментарий
Теги:
android-camera
android-camera-intent

1 ответ

3
Лучший ответ

Джеймс

Вот функция, которую я использую для захвата изображения и сохранения его в выбранном мной месте (подпапка с именем моего приложения).

public void imageFromCamera() {
    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
        Log.d(TAG, "No SDCARD");
    } else {
        mImageFile = new File(Environment.getExternalStorageDirectory()+File.separator+"MyApp",  
            "PIC"+System.currentTimeMillis()+".jpg");
        mTempImagePath = mImageFile.getAbsolutePath();
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mImageFile));
        startActivityForResult(intent, TAKE_PICTURE);
    }
}
  • 0
    он выдает java.lang.RuntimeException: сбой при доставке результата ResultInfo {действие = кто = ноль, запрос = 1, результат = -1, данные = намерение {действие = встроенные данные (имеет дополнения)}} в действие {

Ещё вопросы

Сообщество Overcoder
Наверх
Меню