問題タブ [hfp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - SIP/VoIP を使用した Android アプリの Bluetooth HFP サポート
ヘッドセット/ヘッドフォン/カー ステレオなどの Bluetooth デバイスのサポートを Android アプリに追加して、ユーザーが SIP/VoIP 通話を行えるようにしようとしています。私は主に、Bluetooth ヘッドセットのボタンを使用して通話の応答と終了の要件に対処しようとしています。他のボタン/機能の処理はあるとよいでしょう。
私が行った検索とこれまでに読んだすべてのテキストで、次のことに出くわしました-
- どこでも提案されている一般的な方法の 1 つは、に登録すること
ACTION_AUDIO_STATE_CHANGED
です。しかし、これは本当に私を助けません。そのためのインテントは、Bluetooth ヘッドセットのボタンが押されるたびに送信されます。また、Bluetooth ヘッドセットで呼び出し音を開始するときにも送信されます。 - 私が見つけた非常に一般的な解決策は、Bluetooth Adapter クラスの使用でした。あなたがそれでできることはあまりありません。だからまた役に立たない。
- 私が遭遇した別のアプローチは、ベンダー固有のヘッドセット イベントの使用です。いくつかの努力の後、特定の Plantronics Bluetooth ヘッドセットでこれを機能させることができました。Jabra をサポートすることは重要です。
- 私が遭遇したもう 1 つのアプローチは、電話アプリと同じ方法で IBluetoothHeadsetPhone.aidl をバインドすることです。それに関する情報はほとんど見つかりませんでした。先に進んで何かを実装するのに十分ではありませんでした。
誰かがそのようなことをした場合、私が直面している問題は珍しいものではないと思います.それは十分に文書化されていないと思います. 任意のポインタ、アプローチ、リンクをいただければ幸いです。
私が試した他のアプローチを見つけたら、さらに情報を追加しようとします。私が試した解決策についてさらに必要な場合は、詳細をお尋ねください。また、質問にフラグを立てるだけでなく、変更を提案してください。前もって感謝します。