Лучший способ справиться с AudioManager в Android
Мне интересно, как лучше всего обращаться с AudioManager в Android для медиа. Как вы знаете, AudiManager управляет различными типами аудио, такими как музыка или мелодия звонка.
Если у меня есть приложение, играющее звуковые эффекты и вибрирующее, с 3 занятиями, как я должен справиться с этим классом?
- Нужно ли устанавливать громкость для метода onCreate в каждом упражнении? Тогда используйте это
audioManager.setVolumeControlStream(AudioManager.STREAM_MUSIC);
-Или мне нужно сделать статическую ссылку и использовать ее каждый раз?
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
- Или это неправильно, и я не понял, как это работает?
Честно говоря, у меня проблемы с этим в моих 3-х действиях: в первых 2-х действиях у меня есть звуковой эффект, а в 3-м - только вибрация. В первом упражнении звук находится в "режиме мелодии звонка", а в двух других - в "режиме мультимедиа". Так что громкость звука отличается, что плохо.
1 ответ
Для того, чтобы использовать AudioManager
у вас должен быть его экземпляр (в каждой деятельности или услуге, которую вы хотите использовать), поэтому:
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
тогда вы можете использовать его:
audioManager.setVolumeControlStream(AudioManager.STREAM_MUSIC);
Это не нужно вызывать внутри OnCreate()
метод, но должен быть вызван перед воспроизведением звука.