PBAP profile is associated with HFP profile. Disconnect PBAP
profile while disconnecting HFP profile. We ever never doing this
and were expecting the remote end to do it. So when the user
disconnects a headset, we will end up with the ACL link still up
because PBAP has not been disconnected.
This is little bit of a hack till PBAP profile is converted to
use the new profile APIs.
Change-Id: I04821daae6588955fbfea01472e6a1b6f9212608
Currently, when A2DP is connected and the user changes volume
keys on the device, we just change the volume on the device.
We are not supposed to do that. The white paper recommendation
is to keep the volume stream at max and just send the volume
keys over. But then not all A2DP headsets act as AVRCP targets,
hence check for that.
So now the media code should use the API and not change the volume
at the device but just send the keys.
Bug: 3071356
Change-Id: I03a8b6f7619cf860c4e63979bf4903ded9ecd314
Merge commit 'c008ca96bb32289958010dcf8f247c35ab9b1f18' into gingerbread-plus-aosp
* commit 'c008ca96bb32289958010dcf8f247c35ab9b1f18':
Work around for errant headsets.
1. Some headsets send an AVCTP connection before an AVDTP connection
When that AVCTP connection fails, we get stuck in IncomingA2DP state
because we don't handle AVCTP signals for now.
We need to handle the signals and fix it better.
2. Also when ACL gets disconnected, reset state i.e
when the low level connection disconnected reset our state.
This is like a fail safe in case we get stuck.
Bug: 3051490
Change-Id: Ibcf188103999ffb1e08c36c2554504c639fb7f50
Merge commit '38702d5f1c42e2dfcc8fa5472c8fe842b4056914' into gingerbread-plus-aosp
* commit '38702d5f1c42e2dfcc8fa5472c8fe842b4056914':
DO NOT MERGE: Disconnect PBAP while disconnecting HFP profile.
PBAP profile is associated with HFP profile. Disconnect PBAP
profile while disconnecting HFP profile. We ever never doing this
and were expecting the remote end to do it. So when the user
disconnects a headset, we will end up with the ACL link still up
because PBAP has not been disconnected.
This is little bit of a hack till PBAP profile is converted to
use the new profile APIs.
Change-Id: I5f68b228fd5e607605928a52343ad4b86c58ac0b
* Fix some typos in Javadoc and log messages.
* Remove redundant initializer in BluetoothAdapter.readOutOfBandData()
* Use canonical "UTF-8" charset name instead of "UTF8" in
BluetoothDevice.convertPinToBytes()
Change-Id: I58cd5dc48a7ad0053d204c5f590b4b3d438d8672
Merge commit 'eb3b40af974d818cab66bf0a728c8bdec4f6f715'
* commit 'eb3b40af974d818cab66bf0a728c8bdec4f6f715':
Fix Bluetooth Javadoc to clarify the maximum device name length.
Merge commit '0f5843069bd419fba4fb253986645dfbca0784b7' into gingerbread-plus-aosp
* commit '0f5843069bd419fba4fb253986645dfbca0784b7':
Fix Bluetooth Javadoc to clarify the maximum device name length.
The maximum length of a Bluetooth device name is 248 bytes using
UTF-8 encoding. Updated the Javadoc to clarify that the length is
limited by the number of UTF-8 bytes and not the number of characters.
Change-Id: I135671f5ee6c5eb6372f3fbbc5fccb02de65e6c4
Merge commit 'cc5494c9996f809e36539b24e8b6b67683383d29' into gingerbread-plus-aosp
* commit 'cc5494c9996f809e36539b24e8b6b67683383d29':
Out Of Band API for Secure Simple Pairing.
Added ACTION_VENDOR_SPECIFIC_HEADSET_EVENT,
EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_CMD, EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_ARGS.
BluetoothAssignedNumbers.java (new file):
A home for BT assigned numbers, beginning with the company IDs.
HeadsetBase.java:
Reformatted some code.
AtCommandHandler.java:
Fixed comment typos.
Change-Id: I34d6f248166305d72be66632779fc963b894379c
Added EXTRA_VENDOR_SPECIFIC_HEADSET_EVENT_COMPANY_ID.
Fixed a minor comment typo.
Change-Id: I8550692c13510a853c894b2d108bef4520d931c2
Merge commit '4a671a745202cb15cc668d46400731a03b068558'
* commit '4a671a745202cb15cc668d46400731a03b068558':
Update javadoc for the API and change return of getBondedDevices().
Merge commit '4e25db6a51c4182139b85e3b01317d161f944bbb'
* commit '4e25db6a51c4182139b85e3b01317d161f944bbb':
Check whether Bluetooth is enabled before making any API calls.
getBondedDevices() *might* work if called before the Bluetooth
State intent is broadcasted. However, this can cause ANRs and problems.
This API was updated to return null, if called before the intent
is received. However, this might cause existing apps to crash. Return
an empty set instead.
Change-Id: Ibc484d3394aa0bbebd651221efde6a7015ce7110
For example, Settings app makes calls to get Bonded Devices
before Bluetooth is on. This leads to ANRs and will
prevent autoconnection.
Change-Id: I56748a9bd1d603b5782c17775c6b20b831bf6572
Add device class constant for PROFILE_HID and check for
Device.Major.PERIPHERAL when checking for class matches.
Change UUID for HID support.
Fix bug in BluetoothService.
Change-Id: Ie5361257d90fd749249e915824564bc3d79fb95d
bluetooth SCO for off call use cases.
Added method to BluetoothHeadset API to check if voice dialer over
bluetooth is supported. Replaces direct use of DISABLE_BT_VOICE_DIALING
and takes platform capabilities into account.
Needed for issue 2416481: Support Voice Dialer over BT SCO.
Change-Id: I237d5a984dbc4cbc88e98b85d710a6c87ba1b315