2013-08-22 8 views
5

「ヘッドセット」「スピーカー」と「電話ハンドセット」を選択するJBダイヤラーのメディア出力チューザーのように動作するボタンセットが必要です。私はスピーカーをうまく点滅させることができますが、メディア出力を標準のハンドセットとBluetoothヘッドセットの間で切り替えることは、私を逃してしまいます。ブルートゥースとハンドセットのメディアオーディオの選択方法

メディア出力を制御するダイヤラーのようなビルドとオプションはどのようにしてできますか?私はブルートゥースとオーディオコントロールのドキュメントを見てきましたが、何も正しく動作していないようです(setScoBluetoothなど)

+0

どのような種類のBluetoothアクセサリですか? 1つはハンズフリーとしてのみ、またはA2DPにも対応していますか? – Michael

+0

私はそれをテストしているデバイスはA2DP、好ましくはSCO/A2DPに依存しないソリューションですが、この時点で私は入手できるものを取ります – Pyrodante

答えて

2

ルーティングポリシーの実装はプラットフォームによって異なるため、

A2DP対応デバイスが "メディア用"ペア設定/接続されている場合は、MUSICストリーム用のデフォルト出力デバイスである必要があります。したがって、何もしない場合は、オーディオをA2DPデバイスにルーティングする必要があります。

A2DPデバイスの代わりにスピーカーにオーディオをルーティングするには、falseという引数を持つAudioManagerのsetBluetoothA2dpOnメソッドを使用します。このメソッドは長い間廃止されたとマークされていますが、前回のチェック時には依然として存在し、通知されたアクションを実行します。

オーディオをイヤホンにルーティングするには、VOICE_CALLストリームタイプを使用し、AudioManagerのsetModeメソッドを使用して、モードをMODE_IN_CALLに変更します。 setBluetoothScoOn(false)でBluetoothを無効にすることもできます。

+0

私は同じ問題に直面しています。私は上記のすべてのovをしたが、まだdoesnt仕事 –

関連する問題