2017-02-16 75 views
1

我有一個使用PJSUA2進行VoIP通信的Android項目,其他一切正常。但是我遇到了一個問題,那就是我無法讓音量控制在顯示我的活動呼叫的活動中工作。我曾嘗試這樣做推薦的方式 -我如何使用PJSUA2管理Android的音頻輸出水平

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

這什麼都不做。我需要知道如果使用OnKey Listeners是手動增加和減小音量的可行替代方案,或者如果我完全錯過了某些內容,這會讓我以首選方式進行操作。

+0

我也有同樣的問題@Hanut。在運行我的應用程序時,一些手機提供了良好的音頻級別,但在某些手機中,它的音頻電平並不可靠,音量也很低。但手機的音量水平始終很高。如何解決這個問題?你找到了嗎?請幫幫我 – NandhaKumar

回答

0

所以我終於想出瞭如何合理地做到這一點,PJSUA是實現我自己的按鍵處理程序,然後相應地改變Rx音頻電平。希望這可以幫助那些和我一樣糟糕的人。

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);