Previously, the BluetoothCodecStatus.equals() implementation
was incorrect when comparing arrays of capabilities.
In the new implementation, the arrays are compared correctly,
and also the ordering of the capabilities in each array is ignored.
Also, added unit tests for class BluetoothCodecConfig and class
BluetoothCodecStatus.
Bug: 73404858
Bug: 73379307
Test: Unit tests (in frameworks/base)
runtest --path core/tests/bluetoothtests/src/android/bluetooth/BluetoothCodecConfigTest.java
runtest --path core/tests/bluetoothtests/src/android/bluetooth/BluetoothCodecStatusTest.java
Change-Id: If22087465397b7c4175c33f7d1909a15d957fb24
Merged-In: If22087465397b7c4175c33f7d1909a15d957fb24
(cherry picked from commit 9d36e6babc)
Clarify that the caller has to wait for onServiceAdded callback before
calling BluetoothGattServer::addService again.
Bug: 72717069
Test: Compile
Change-Id: I20b031c724ba64bfd71cf10e58e587f69e4a2555
(cherry picked from commit 4b5cf48560)
Add new test parameters, min_ce and max_ce, to the SL4A tests for LE
Connection-oriented Channel (CoC) feature. This CL passes these 2
parameters to native stack.
Test: Run cmd: act.py -c $MY_SL4A_CONFIG -tc BleCoc2ConnTest
Bug: 77528723
Change-Id: I9d3d74f671772014209f8114c2d1b8ba606c54d5
(cherry picked from commit 148dd5bf86)
* setActiveDevice() returns false in error case, e.g. when the device is
not connected
* add getActiveDevices() instead of isActiveDevice(), which returns a list
that must have two elements: left and right, or empty list on error
Test: manual
Bug: 69623109
Change-Id: I48f3388c56434d0c21e09bd8b794e58848cd8794
(cherry picked from commit 8d799f8340)
Bug: 69136526
Test: test with apps using HID Device profile
Change-Id: If0e49840257c877c975c2da176a08e613668cbc3
(cherry picked from commit 347ef4099e)
Remove the hidden unplug() API because it is not used and it can cause
the remote device to be unpaired. System apps should use unbond() and
user apps should not use reflection to invoke it.
Bug: 67866553
Test: SL4A
Change-Id: I1bdc06dbb5460c9fd52230b78cbf9434a4349d24
(cherry picked from commit dbc6d14f6e)
Add the AVRCP Target constant to Bluetooth Profile. Also remove redundant
public static final modifier on the constants.
Bug: 68854188
Test: Compiles and local test with service enabled
Change-Id: If2ec607fc704c225f8903d438fe970dfafac25f1
(cherry picked from commit 38c3073ba2)
Merged-In: If2ec607fc704c225f8903d438fe970dfafac25f1
This reverts commit 7020b015e9.
Reason for revert: This breaks platforms that only support a single advertising slot.
Bug: 76135219
Test: advertising does not work, revert change, advertising works
Change-Id: Ib8c823eb9990cc06bad95c8c3ad0129afb245e00
* Replace bare field usage with getter methods;
* Remove Builder;
* Move BluetoothHidDeviceCallback to inner class;
* Remove toArray() and equals();
* Throw IllegalArgumentException where applicable;
* Add an Executor parameter before Callback;
Bug: 72168436, 72168126
Test: make update-api, make, make sl4a.Common
Change-Id: I13095458bf3ded7a376e8d20fd13df12ef426693
(cherry picked from commit f2f5dc355f)
Add setActiveDevice() for Hearing Aid Profile in SettingsLib
Bug: 69623109
Test: robolectric test and manual test
Change-Id: I70eafe030747053876e2ab8a125d5dd01c5e0eb9
This brings back the check on the multiple advertisement support before
granting any Bluetooth LE advertiser. In other words, one slot is preserved
for GMS core.
Bug: 74819586
Test: Run an BLE application and verify the number of advertisements
Change-Id: I05014e597bd5868f18a81842dc341e47991f2c79
The AudioManager now handles all calculations for volume stepping now
and no longer uses adjustAvrcpAbsoluteVolume.
Bug: 68812037
Test: Compile
Change-Id: I9cbf7989e49738c7a43fe3142aced5803111271e
Certain APIs require that a device have a specific feature to operate
correctly, so start annotating them.
Test: builds, boots
Bug: 72284763
Change-Id: Ie2f30284bdfdb6acc4067f434eba3b5433837606
Exempt-From-Owner-Approval: simple annotations
This is implementation of Hearing Aid Profile that will in future
be connected to Bluetooth Manager - see TODOs in BluetoothHearingAid.java
Bug: 69623109
Test: compilation. Manual test with HA.
Change-Id: I79643ea1e14e9df7f5771169359c964a60c56618
As part of new SL4A tests for LE CoC to measure data throughput, this
commit adds a function to set the LE Tx Data Length parameter to its
maximum.
Test: Ran the new ACTS Tests for LE CoC (BleCocTest and BleCoc2ConnTest)
Bug: 70683224
Change-Id: Iea93f6cb9f4f7cc484f121afa158d7dae18d1ef1
The majority of Manager-style classes already use Context.getUserId()
when making calls into the OS, so clean up the remaining callers to
unify behind this strategy.
This gives @SystemApi developers a nice clean interface to interact
across user boundaries, instead of manually adding "AsUser" or
"ForUser" method variants, which would quickly become unsustainable.
Test: builds, boots
Bug: 72863821
Exempt-From-Owner-Approval: trivial changes
Change-Id: Ib772ec4438e57a2ad4950821b9432f9842998451
As part of new SL4A tests for LE CoC to measure data throughput
performance, this commit will add a function to enable the CoC Facade
to modify the LE Connection Parameters especially the Connection
Intervals.
Test: Ran the new ACTS Tests for LE CoC
Bug: 70683224
Change-Id: Ie071b09a44d68fe063198a39eb788c434b092442
* Update usage of A2dpService API calls that take BluetoothDevice
as an additional argument
* Update the description for BluetoothA2dp.connect()
Exempt-From-Owner-Approval: De-facto owner of the relevant changes is
the Bluetooth team.
Bug: 69269748
Test: Manual
Change-Id: I190ed48ef65bbc8b88b45f84ebd6ab3d21cf0b4e
Merged-In: I190ed48ef65bbc8b88b45f84ebd6ab3d21cf0b4e
(cherry picked from commit 502af2192c)
Status: Ready for writer review.
Note: This is a javadoc only change.
Test: Build the docs with "make ds-docs" and staged updated content.
Staged content:
go/dac-stage/reference/android/bluetooth/BluetoothAdapter.html#ACTION_CONNECTION_STATE_CHANGED
Bug: 69097875
Change-Id: Ibffea2373ded825558beaa669ae4daf3c0ff3d2f
* Update usage of A2dpService API calls that take BluetoothDevice
as an additional argument
* Update the description for BluetoothA2dp.connect()
Exempt-From-Owner-Approval: De-facto owner of the relevant changes is
the Bluetooth team.
Bug: 69269748
Test: Manual
Change-Id: I190ed48ef65bbc8b88b45f84ebd6ab3d21cf0b4e
The API can be used to obtain the maximum number of connected
devices for A2DP or HFP.
Test: Manual
Bug: 64767509
Change-Id: I80b8a1c85e33ae0b23fdc4812f8991a4202d9abc
Experimental and hidden APIs are defined for the Connection-oriented Channel
(CoC) features. The APIs using PSM are implemented.
Test: Can compile
Bug: 70683224
Change-Id: Icdb5fa190b0e21881a60437fa48cd575371ee1e4