2011-10-26 182 views
1

我的問題是 - 如何設置藍牙incall音量。Android和藍牙耳機音量

由於這裏有一些應用程序,它們中沒有一個適用。

無論如何 - 沒有應用程序 - 爲自己創建一個。我在android開發中非常成熟,所以我嘗試過使用audioManager.setStreamVolume(),但沒有任何運氣 - 只有內部音頻在此之後發生了變化。

即使玩startBluetoothSCO()也不是答案。

查看logcat後,os如何響應按音量鍵,我發現,在我的手機中的startBluetoothSCO()音量鍵發送AT命令而不是混合流(AT + VGM = 0 ... 15)後。

所以我的代碼應該是這個樣子:

AudioManager audioManager = (AudioManager)this.getSystemService(Context.AUDIO_SERVICE); 
audioManager.startBluetoothSco(); 
// send AT commands 
audioManager.stopBluetoothSco(); 

爬行通網絡提供給我回答這個問題沒有辦法直接從Android的API訪問調制解調器(和其他propably通信端口)。

因此,也許有人有任何該死的想法如何防止每次連接/斷開耳機重置BT音量?使用我自己可以使用的代碼,或者使用可在某處使用的一些第三方應用程序。

操作系統:GB 2.3.4,SGS

感謝您的任何想法。

回答

0

您可以通過RFCOMM連接發送AT命令。但是,您必須在Android創建耳機/免提配置文件連接(在藍牙設置菜單中稱爲手機音頻)之前執行此操作,或者至少斷開HSP/HFP連接,然後通過兩者之一的RFCOMM進行連接(HSP和HFP都應與未經請求的+ VGS命令),設置音量,然後重新連接。