2017-02-16 18 views
1

У меня есть проект Android, который использует PJSUA2 для VoIP-связи, а все остальное работает отлично. Тем не менее, меня заглушат, с проблемой, когда я не могу заставить элементы управления томами работать в Activity, где отображается мой активный вызов. Я пробовал делать это порекомендованный путь -Как управлять уровнями аудиовыхода с помощью PJSUA2 для Android

audioManager = (AudioManager) getSystemService(AUDIO_SERVICE); 
setVolumeControlStream(AudioManager.STREAM_MUSIC); 

Это ничего не значит. Мне нужно знать, является ли использование OnKey Listeners возможной альтернативой ручному увеличению и уменьшению объема, или если мне не хватает чего-то полностью, что позволит мне сделать это по-своему.

+0

У меня также такая же проблема @Hanut. При запуске моего приложения некоторые мобильные телефоны дают хороший уровень звука, но в некоторых мобильных телефонах его не слышимый и очень низкий уровень звука. Но уровень громкости в телефоне всегда высок. Как решить эту проблему? Вы нашли это? пожалуйста помогите – NandhaKumar

ответ

0

Итак, я, наконец, выяснил, как сделать это разумно с PJSUA, чтобы реализовать собственный обработчик нажатия клавиш, а затем изменить Rx Audio Levels соответственно. Надеюсь, это поможет кому-то, кто застрял так плохо, как я.

1

Когда звонок находится в состоянии подключения, вы должны установить аудиорежим на MODE_IN_COMMUNICATION и установить на MODE_NORMAL на разъединение.

// set mode to 3 to indicate MODE_IN_COMMUNICATION mode 
((AudioManager) getSystemService(Context.AUDIO_SERVICE)).setMode(3); 
// set audio mode to normal again on call disconnection 
((AudioManager) getSystemService(Context.AUDIO_SERVICE)).setMode(AudioManager.MODE_NORMAL);