Android SDK. AudioManager. setStreamVolume max int value - PullRequest
9 голосов
/ 11 февраля 2012

Я нахожусь в процессе разработки приложения для Android.

Мне удалось успешно установить громкость динамика с помощью:

AudioManager audioManager = (Audiomanager)getSystemService(Context.AUDIO_SERVICE);

audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, sb2value, 0);

Вопрос в том, что такое max intзначение, которое может быть "sb2value"?

К вашему сведению, "sb2value" - это значение из ползунка.По мере скольжения пользователя громкость звука изменяется.

Я допускаю, чтобы значение этого ползунка изменялось от 0 до 100. Может ли значение 100 использоваться в качестве значения второго аргумента или является лимитом ниже, например 20?

Спасибо,

PS Большинство моих вопросов выглядят одинаково, потому что я новичок, понимаю, что каждый вопрос нуждается в новом сообщении, и у меня много проблем с простой программой.

Ответы [ 3 ]

16 голосов
/ 11 февраля 2012

Чтобы получить максимальную громкость, вы можете установить sb2value:

sb2value = audioManager.getStreamMaxVolume(audioManager.STREAM_MUSIC);
5 голосов
/ 11 февраля 2012

Вы можете использовать метод getStreamMaxVolume (int) , чтобы получить необходимое значение. Надеюсь, это поможет.

3 голосов
/ 11 февраля 2012

Вместо жесткого кодирования максимального значения вашего слайдера (или SeekBar, если вы его используете), установите атрибут Max на audioManager.getStreamMaxVolume(audioManager.STREAM_MUSIC) Это будет работать лучше, потому что разные устройства могут иметь разные ограничения громкости.

Что касается фактического лимита, я бы предположил, что он не превышает 10.

...