diff options
author | Tao Bai <michaelbai@google.com> | 2014-09-19 19:59:41 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-09-19 19:59:41 +0000 |
commit | 885694b20834a49f4c6b5d69ab25eace36f16f93 (patch) | |
tree | b22da7617882ad90c0e2cfa536e3184d0d913e45 | |
parent | 2e72708a8930ea49a56583cad4b12ae4a5ebb66a (diff) | |
parent | 481681a1d37ea51a6b1ee53600efeb5013666c58 (diff) | |
download | Browser-885694b20834a49f4c6b5d69ab25eace36f16f93.tar.gz |
am 481681a1: Using .jpg as suffix of the temporay file for camera.
* commit '481681a1d37ea51a6b1ee53600efeb5013666c58':
Using .jpg as suffix of the temporay file for camera.
-rw-r--r-- | src/com/android/browser/UploadHandler.java | 43 |
1 files changed, 21 insertions, 22 deletions
diff --git a/src/com/android/browser/UploadHandler.java b/src/com/android/browser/UploadHandler.java index c20fbf6f..ab4aff67 100644 --- a/src/com/android/browser/UploadHandler.java +++ b/src/com/android/browser/UploadHandler.java @@ -125,18 +125,6 @@ public class UploadHandler { } private Intent[] createCaptureIntent() { - try { - File mediaPath = new File(mController.getActivity().getFilesDir(), "captured_media"); - if (!mediaPath.exists() && !mediaPath.mkdir()) { - throw new RuntimeException("Folder cannot be created."); - } - File mediaFile = File.createTempFile( - String.valueOf(System.currentTimeMillis()), null, mediaPath); - mCapturedMedia = FileProvider.getUriForFile(mController.getActivity(), - "com.android.browser-classic.file", mediaFile); - } catch (java.io.IOException e) { - throw new RuntimeException(e); - } String mimeType = "*/*"; String[] acceptTypes = mParams.getAcceptTypes(); if ( acceptTypes != null && acceptTypes.length > 0) { @@ -145,7 +133,7 @@ public class UploadHandler { Intent[] intents; if (mimeType.equals(IMAGE_MIME_TYPE)) { intents = new Intent[1]; - intents[0] = createCameraIntent(); + intents[0] = createCameraIntent(createTempFileContentUri(".jpg")); } else if (mimeType.equals(VIDEO_MIME_TYPE)) { intents = new Intent[1]; intents[0] = createCamcorderIntent(); @@ -154,15 +142,31 @@ public class UploadHandler { intents[0] = createSoundRecorderIntent(); } else { intents = new Intent[3]; - intents[0] = createCameraIntent(); + intents[0] = createCameraIntent(createTempFileContentUri(".jpg")); intents[1] = createCamcorderIntent(); intents[2] = createSoundRecorderIntent(); } return intents; } - private Intent createCameraIntent() { - if (mCapturedMedia == null) throw new IllegalArgumentException(); + private Uri createTempFileContentUri(String suffix) { + try { + File mediaPath = new File(mController.getActivity().getFilesDir(), "captured_media"); + if (!mediaPath.exists() && !mediaPath.mkdir()) { + throw new RuntimeException("Folder cannot be created."); + } + File mediaFile = File.createTempFile( + String.valueOf(System.currentTimeMillis()), suffix, mediaPath); + return FileProvider.getUriForFile(mController.getActivity(), + "com.android.browser-classic.file", mediaFile); + } catch (java.io.IOException e) { + throw new RuntimeException(e); + } + } + + private Intent createCameraIntent(Uri contentUri) { + if (contentUri == null) throw new IllegalArgumentException(); + mCapturedMedia = contentUri; Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); @@ -171,12 +175,7 @@ public class UploadHandler { } private Intent createCamcorderIntent() { - if (mCapturedMedia == null) throw new IllegalArgumentException(); - Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); - intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | - Intent.FLAG_GRANT_WRITE_URI_PERMISSION); - intent.putExtra(MediaStore.EXTRA_OUTPUT, mCapturedMedia); - return intent; + return new Intent(MediaStore.ACTION_VIDEO_CAPTURE); } private Intent createSoundRecorderIntent() { |