를 저장하지 나는이 페이지를 사용했다.안드로이드 카메라 이미지는 항상
가끔 이미지가 저장되는 경우가 있습니다. 나는 삼성 갤럭시 타블렛 (8.9)에서 테스트 중이다. 해상도를 가장 높은 설정 (2048x1536)으로 유지하면 & 사진을 세로로 가져 가면 이미지가 절대로 저장되지 않습니다. 풍경으로 사진을 찍으면 이미지가 대부분의 시간을 절약합니다. 1024x768로 축소하면 이미지가 세로 또는 가로로 저장됩니다.
이것을 알아내는 방향을 찾고 있습니다.
private void startCameraForCapture() {
// create Intent to take a picture and return control to the calling application
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
try {
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE, getApplicationContext()); // create a file to save the image
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
// start the image capture Intent
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
} catch (Exception e) {
// TODO Auto-generated catch block
_errorMessageTitle = "Error 'StartCamera'";
_errorMessage = "Error: " + e.toString();
showDialog(DIALOG_ERROR_GENERAL);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
if (resultCode == RESULT_OK) {
showPhoto(2);
} else if (resultCode == RESULT_CANCELED) {
// User cancelled the image capture
} else {
// Image capture failed, advise user
_errorMessageTitle = "Error in 'Take Photo'";
_errorMessage = "Image Capture Failed";
showDialog(DIALOG_NOTICE_GENERAL);
}
}
if (requestCode == CAPTURE_VIDEO_ACTIVITY_REQUEST_CODE) {
if (resultCode == RESULT_OK) {
Toast.makeText(getApplicationContext(), "Video not yet supported", Toast.LENGTH_LONG).show();
// Video captured and saved to fileUri specified in the Intent
} else if (resultCode == RESULT_CANCELED) {
// User cancelled the video capture
} else {
// Video capture failed, advise user
}
}
}
에뮬레이터의 작업 공간 또는 장치 공간이 충분합니까? –
새로운 태블릿입니다. 12GB의 저장 용량을 사용할 수 있습니다. RAM을 검사 할 때 200MB의 여유 공간이 있습니다. – Chris
사진을 너무 빨리 찍을 때도 같은 문제가있었습니다. 다음 사진을 촬영하기 전에 항상 디스크에 저장되는 것은 아니며 손상된 사진으로 끝나거나 전혀 복원되지 않습니다. 사진을 저장하고 기다리는 중입니까? 아니면 차례로입니까? –