summaryrefslogtreecommitdiff
path: root/framework/java/android/bluetooth/BluetoothHeadsetClient.java
diff options
context:
space:
mode:
authorJack He <siyuanh@google.com>2018-05-02 19:10:56 -0700
committerJack He <siyuanh@google.com>2018-05-07 12:57:26 -0700
commitc46a01e89a0aaf40196e773e2112b06894d278f5 (patch)
tree3cd1d612cd5a6a997c837abf1ac6f7e598f2509d /framework/java/android/bluetooth/BluetoothHeadsetClient.java
parent126b03498e8c54331fba4bea60208ba1b21da0bf (diff)
Bluetooth: Fix HFP SCO logic and documentation
AudioService: * Call setBtScoActiveDevice and setBluetoothScoOn both in AudioService's broadcast receiver so that these two methods must be triggerred in the same sequence as ACTIVE_DEVICE_CHANGED and AUDIO_STATE_CHANGED intents are sent and we no longer need to handle race condition by synchronously checking active device in setBluetoothScoOn * Default sco audio mode when no headset is active should be virtual voice call, as many HFP devices do not accept SCO audio without an ongoing call * Synchronize checkScoAudioState() method with mScoClients * Add helper functions connectBluetoothScoHelper and disconnectBluetoothScoHelper to call various SCO setup and tear down methods based on sco audio mode * Try raw, virtual call, and voice recognition mode when disconnecting externally started SCO * Add new sco state SCO_STATE_DEACTIVATING to allow back to back calling of startBluetoothSco and stopBluetoothSco Audio Manager: * Modified AudioManager logic so that removed devices callback is called before newly added devices BluetoothHeadset: * Modified BluetoothHeadset so that start and stop SCO using virtual voice call no longer need a parameter and will use active device by default * Modified documentation around various sco mangement APIs to match their expected behaviors Bug: 76114959 Test: VoIP calls sanity test cases Change-Id: Id50db88f4ff36069b0f392c81dd9d90c24cd2206 (cherry picked from commit 09ca4a4c07d360218ab9ca40e6c2ae7fbf485aec)
Diffstat (limited to 'framework/java/android/bluetooth/BluetoothHeadsetClient.java')
0 files changed, 0 insertions, 0 deletions