2015-01-13 4 views
-1

갤러리에서 이미지에서 캡처 한 이미지를 저장하고 싶습니다. 나는 그들이 sdcard에 저장하는 것을 원하지 않는다. 그것을 성취하는 방법. 다음 코드를 가지고 있습니다카메라에서 캡처 한 이미지를 갤러리에 저장하는 방법은 무엇입니까?

Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 

i.putExtra(MediaStore.EXTRA_OUTPUT, tempuri); 
startActivityForResult(i, CHOOSE_CAMERA_RESULT); 

무엇이 tempuri이어야합니까? getOutputFromCamera은()

private File getOutputFromCamera() { 

    File storageDir = new File(
      Environment 
        .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), 
      AppConstants.FOLDER_NAME); 
    if (!storageDir.exists()) { 
     if (!storageDir.mkdirs()) { 
      Log.i(TAG, "Failed to create directory " + storageDir 
        + AppConstants.FOLDER_NAME); 
      Toast.makeText(this, "Failed to create Directory", 
        Toast.LENGTH_SHORT).show(); 
      return null; 
     } 
    } 

    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss", 
      Locale.getDefault()).format(new Date()); 
    File imageFile = new File(storageDir.getPath() + File.separator 
      + "IMG_" + timeStamp + ".png"); 
    return imageFile; 
} 

입니다

답변

2
tempuri=Uri.fromFile(getOutputFromCamera()); 

경우 Environment.DIRECTORY_PICTURES 기본 그림 디렉토리와 AppConstants.FOLDER_NAME 이미지가 저장된 폴더 이름입니다. 필요에 따라 변경할 수 있습니다.

관련 문제