OSDN Git Service

Fix crash in AOSP Camera app when recording video
authorJose Lima <joselima@google.com>
Tue, 21 Jun 2016 22:54:02 +0000 (15:54 -0700)
committerJose Lima <joselima@google.com>
Tue, 21 Jun 2016 22:57:15 +0000 (15:57 -0700)
   - Don't allow security exception to crash the app, if it has not been
granted DND access, and log the error instead.

Bug: 27928399
Change-Id: I4dc5b3f3b83cdf93d8cbe9299c987e58b46164de

src/com/android/camera/VideoModule.java

index f16fc0a..3465953 100644 (file)
@@ -1325,14 +1325,23 @@ public class VideoModule extends CameraModule
         mOriginalRingerMode = mAudioManager.getRingerMode();
         // Make sure no system sounds and vibrations happen during video
         // recording.
-        mAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
+        try {
+            mAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
+        } catch (SecurityException e) {
+            Log.e(TAG, "Error: " + e);
+        }
     }
 
     private void restoreRingerMode() {
         // First check if ringer mode was changed during the recording. If not,
         // re-set the mode that was set before video recording started.
         if (mAudioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT) {
-            mAudioManager.setRingerMode(mOriginalRingerMode);
+            // Set the original ringer mode back.
+            try {
+                mAudioManager.setRingerMode(mOriginalRingerMode);
+            } catch (SecurityException e) {
+                Log.e(TAG, "Error: " + e);
+            }
         }
     }