Android ICS управляет отключением, вибрацией или отключением звука в тихом режиме

Я искал повсюду, где мог найти ответ, и есть много вопросов об аудио в Android, но ни одного, который я не могу найти, который рассказывал бы о новых настройках в ICS.

Мое приложение имеет функцию, при которой пользователи могут нажимать кнопку, и звонок телефона будет тихим, без вибрации. Вот мой код, который до сих пор работал нормально:

        mAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, AudioManager.VIBRATE_SETTING_OFF);
        mAudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
        mAudioManager.setStreamVolume(AudioManager.STREAM_RING, 0, 0);

Теперь происходит то, что, когда пользователь нажимает кнопку, громкость по-прежнему уменьшается до 0, но телефон, в частности Galaxy S3, имеет короткую вибрацию. Затем в «Настройки» -> «Звук» тихий режим был изменен с «Выкл.» На «Вибрация». Поэтому всякий раз, когда происходят определенные вещи, у него все еще есть такое короткое вибрирующее уведомление. Я не смог протестировать достаточно тщательно, чтобы знать, что конкретно происходит, чтобы он вибрировал подобным образом, но суть вопроса не в этом.

У меня вопрос, как мы можем контролировать настройки ICS Silent Mode «Выкл.», «Вибрация» и «Отключение звука»? Я хочу иметь возможность установить его на «Без звука», когда они нажимают на эту кнопку, а затем вернуться к «Выкл.» Или к тому, на что он был установлен, когда они нажмут на нее снова. Я пытался использовать метод mAudioManager.setStreamMute, но это нежелательный эффект, и он также не меняет настройки бесшумного режима.

Заранее благодарим за любую помощь, это очень ценится!

Павел

Ответы на вопрос(1)

Ваш ответ на вопрос