안드로이드 카메라와 갤러리에서 파일을 불러 올 때에 누가 버전 부터 provider를 이용해야 되잖아요.
카메라 이용과 갤러리 이용을 하고 가져온 값이 달라서 서버 저장이 안되고 있습니다. 갤러리에서만 가져오면
잘 가져오는데 카메라 이용시 주소값이 이상한거 같은데요.
content://com.****.******.provider/hidden/Electric/035958_3155430970351769715.jpg, <-- 카메라
content://media/external/images/media/243643 <-- 갤러리
카메라를 찍어서도 갤러리 처럼 uri 가 나올 수 있는 방법이 있나요?
아래는 카메라 코드 입니다. ㅠ
camera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File tempFile=null;
try {
tempFile = createImageFile();
} catch (IOException e) {
Toast.makeText(Gallery_next.this, "이미지 처리 오류! 다시 시도해주세요.", Toast.LENGTH_SHORT).show();
finish();
e.printStackTrace();
}
if (tempFile != null) {
currentPhotoPath = tempFile.getAbsolutePath();
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
photoUri = FileProvider.getUriForFile(Gallery_next.this,
"com.light.electricity.provider", tempFile);
} else {
photoUri = Uri.fromFile(tempFile);
}
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(intent, CAPTURE_IMAGE);
}
}
}
});