From b9d400e161cf695ad5218f177cfbbf493d82950b Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 29 Dec 2019 21:29:49 +0100 Subject: [PATCH] Prevent crash --- .../eu/faircode/email/FragmentCompose.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 3bca5a77ba..412ec07039 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -1182,7 +1182,12 @@ public class FragmentCompose extends FragmentBase { private void onActionRecordAudio() { Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION); - startActivityForResult(intent, REQUEST_RECORD_AUDIO); + try { + startActivityForResult(intent, REQUEST_RECORD_AUDIO); + } catch (SecurityException ex) { + Log.w(ex); + Snackbar.make(view, getString(R.string.title_no_viewer, intent.getAction()), Snackbar.LENGTH_LONG).show(); + } } private void onActionTakePhoto() { @@ -1193,9 +1198,14 @@ public class FragmentCompose extends FragmentBase { // https://developer.android.com/training/camera/photobasics Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); - photoURI = FileProvider.getUriForFile(getContext(), BuildConfig.APPLICATION_ID, file); - intent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI); - startActivityForResult(intent, REQUEST_TAKE_PHOTO); + try { + photoURI = FileProvider.getUriForFile(getContext(), BuildConfig.APPLICATION_ID, file); + intent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI); + startActivityForResult(intent, REQUEST_TAKE_PHOTO); + } catch (SecurityException ex) { + Log.w(ex); + Snackbar.make(view, getString(R.string.title_no_viewer, intent.getAction()), Snackbar.LENGTH_LONG).show(); + } } private void onActionImage() {