Try to respect silent ringer setting
authorsrowen <srowen@59b500cc-1b3d-0410-9834-0bbf25fbcc57>
Fri, 23 Apr 2010 14:58:14 +0000 (14:58 +0000)
committersrowen <srowen@59b500cc-1b3d-0410-9834-0bbf25fbcc57>
Fri, 23 Apr 2010 14:58:14 +0000 (14:58 +0000)
git-svn-id: http://zxing.googlecode.com/svn/trunk@1316 59b500cc-1b3d-0410-9834-0bbf25fbcc57

android/src/com/google/zxing/client/android/CaptureActivity.java

index 3eea85e..068d578 100755 (executable)
@@ -251,6 +251,13 @@ public final class CaptureActivity extends Activity implements SurfaceHolder.Cal
 
     SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
     playBeep = prefs.getBoolean(PreferencesActivity.KEY_PLAY_BEEP, true);
+    if (playBeep) {
+      // See if sound settings overrides this
+      AudioManager audioService = (AudioManager) getSystemService(AUDIO_SERVICE);
+      if (audioService.getRingerMode() != AudioManager.RINGER_MODE_NORMAL) {
+        playBeep = false;
+      }
+    }
     vibrate = prefs.getBoolean(PreferencesActivity.KEY_VIBRATE, false);
     copyToClipboard = prefs.getBoolean(PreferencesActivity.KEY_COPY_TO_CLIPBOARD, true);
     initBeepSound();