| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Bug: 274037299
Test: presubmit tests
(cherry picked from https://android-review.googlesource.com/q/commit:6e179238dc3b3eaa5f8e26c9eff0d891decae5ea)
Merged-In: I993505cd6656d67362eeefd6bd3abd411e8f59ff
Change-Id: I993505cd6656d67362eeefd6bd3abd411e8f59ff
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Dirty cherry-pick to not expose new API on T
Bug: 269363672
Bug: 263323082
Test: atest BluetoothInstrumentationTests
Tag: #feature
(cherry picked from commit 2bf529b70fb558f1ed08dd028d7fa4d3ee13f405)
Merged-In: Ib0ef1fdc3a9dd03f89b9d67d6b490d9f287b5828
Change-Id: I1ab2aa93646795f90177b2e0f234c317801865e3
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Enable framework logs
- Add Bluetooth socket event log into dumpsys
Bug: 263323082
Bug: 248162762
Test: atest BluetoothInstrumentationTests
Change-Id: I0cbb18f1c221eaa7353b3867629affc09f1eb0a8
(cherry picked from commit 63c3fa677e15f1224e43dda1aee9d0d262aaab69)
(cherry picked from commit b6dc15a708a03a5095523161911fc6a4f68772d9)
Merged-In: I0cbb18f1c221eaa7353b3867629affc09f1eb0a8
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch allows to store CCCD values for GMCS and GTBS
characteristics. After re-connection stored values will be set to latest
state (possible only enable notification).
Tag: #feature
Bug: 229037130
Test: atest com.android.bluetooth.btservice.storage.DatabaseManagerTest#testDatabaseMigration_116_117
Change-Id: I55ddf87f2680246f1a60dfa67bd005ccc20d20af
Merged-In: I55ddf87f2680246f1a60dfa67bd005ccc20d20af
(cherry picked from commit e13984ab9da3b3391a3af5860df3b01eabdf53bc)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
HFP android specific command protocol to implement android features.
Used this protocol to support the Audio Policy feature from the HFP
protocol. BluetoothDevice is the endpoint to invoke the feature and
later BLE Audio will also support it.
Cherry picked from wear OS
Dirty because of conflict + hide the API
Bug: 263323082
Bug: 235541516
Bug: 253059988
Test: atest BluetoothInstrumentationTests
Tag: #feature
Merged-In: I5fd6c7959a85104f2bb5e31809a0e250c2dd13d0
(cherry picked from commit cb85f8cb0da7680b9251bbbca7ce12e78008037d)
Change-Id: I5d2d8f4ab71c8ed4f2f2997a7e16fc6b863bc5ae
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- A paired device is recognized as a companion device if its
METADATA_SOFTWARE_VERSION is set to primary or secondary
- Only can have one companion device at a time.
- Remove bond does not remove companion device.
- Reset connectivity settings removes the companion device.
- Companion device has individual GATT connection parameters.
Includes CLs from rvc-wear-dev:
Iff18bf4e22b5bb03bb81203d664bbfa7a69b7bda
Ic4ea700af5b43a62f7f497d4f91ed00a87c6f3ca
I0b27e80f1647c321afa5c15b2c4156c859c9d9c9
I899f027f59d51afae8e9ef819dba3e1661dad3a3
I899f027f59d51afae8e9ef819dba3e1661dad3a3
Tag: #compatibility
Bug: 263323082
Bug: 238442684
Test: atest BluetoothInstrumentationTests
(cherry picked from commit 285a78bc3883bd64bd0b7eae9112d4ee68915011)
Merged-In: Ibed855b4e9a6abfa154732a12861303cd6dc1332
Merged-In: I4eacb6c8acc724d023c4288d2f385ba703231b4c
Change-Id: I222b5297a87db2cdd1dce7db064e43e8ebc65b99
|
| |\
| |
| |
| | |
tm-qpr-dev
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We are currently binding the profile services in framework/
BluetoothProfileConnector, except for BluetoothHeadset
and BluetoothLeCallControl that are bound in BMS.
The issue with binding the profiles in framework/ is that
calling apps don't always have the required permission
(BLUETOOTH_PRIVILEGED) to check if the service is enabled
or not (BluetoothAdapter#getSupportedProfiles), so we are
trying to bind the service even if the profile is disabled.
This change will unify the profiles service binding by
moving the bind process in BluetoothProfileConnector in
BluetoothManagerService and making BluetoothHeadset and
BluetoothLeCallControl use BluetoothProfileConnector.
Bug: 241827236
Bug: 236399693
Test: atest CtsBluetoothTestCases
Test: atest BluetoothInstrumentationTests
Tag: #feature
Ignore-AOSP-First: Cherry-pick
Change-Id: I925b4415c023ff9e43a8ff947ae7ca5456babe64
Merged-In: I925b4415c023ff9e43a8ff947ae7ca5456babe64
|
| |/
|
|
|
|
|
|
|
|
| |
This will be used to communicate LE Audio capabilities from Fast Pair to
BT Stack.
Test: compilation
Bug: 258651822
Merged-In: Id1e912dbdb8f44f73a4638c7606e2ef330bf6979
Change-Id: Id1e912dbdb8f44f73a4638c7606e2ef330bf6979
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
into tm-qpr-dev
* changes:
Load legacy Bluetooth user data at start
Follow error prone recommendation
floss: Migration should only occur on Android
Make the btservices apex updatable.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
```
ObexServerSockets.java:228: warning:
BluetoothSocket is final and does not override Object.toString
Log.d(mTag, "onConnect() socket: " + conSocket);
^
BluetoothPbapService.java:767: warning:
BluetoothSocket is final and does not override Object.toString
+ " socket=" + socket);
^
AvrcpCoverArtService.java:256: warning:
BluetoothSocket is final and does not override Object.toString
debug("onConnect() - device=" + device + ", socket=" + socket);
^
PbapClientConnectionHandler.java:377: warning:
BluetoothSocket is final and does not override Object.toString
Log.d(TAG, "Closing socket" + mSocket);
^
[...]
(see https://errorprone.info/bugpattern/ObjectToString)
```
Bug: 236759221
Test: m RUN_ERROR_PRONE=true Bluetooth
Ignore-AOSP-First: Cherry-pick of aosp/2133706 to solve merge conflict
Merged-In: I6a49a8ef8c6b380547cbb817468fa33bf89347a3
Change-Id: I6a49a8ef8c6b380547cbb817468fa33bf89347a3
(cherry picked from commit 6134f7c0682cbf72a4caeeb2bdc9661aeab9b9f3)
|
| |/
|
|
|
|
|
|
|
|
|
|
| |
This way, we can prevent an infinite loop made by apps calling
BluetoothAdapter.getProfileProxy() in the onServiceDisconnected.
Tag: #refactor
Bug: 249213217
Test: atest CtsBluetoothTestCases
Change-Id: I7342befd9a8fc69c778d20140558afb148a4232e
(cherry picked from commit e07b56b412fc4fb78a8721d8240722a175ef905a)
Merged-In: I7342befd9a8fc69c778d20140558afb148a4232e
|
| |\
| |
| |
| |
| |
| | |
* changes:
LeAudioTestApp: Fix printing broadcast code
Fix array-related errorprone warnings
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.
Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: Ie9d62731bef7e282d0909697963fce681c356d05
Merged-In: Ie9d62731bef7e282d0909697963fce681c356d05
(cherry picked from commit 760b18105998d241f3b1132227ea07088a5120c4)
|
| |/
|
|
|
|
|
|
|
|
|
| |
FYI, ServiceConnection.onServiceDisconnected is not called when
Context.unbindService is called.
Bug: 233690300
Tag: #refactor
Test: atest CtsBluetoothTestCases DeviceHealthChecks
Change-Id: I51ad4e0ecf6b81bce32ccc7e8b4b9550e3695e9c
(cherry picked from commit f314930e3dd229f6e5f64036ea8bc8887536d0ba)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both BluetoothDevice and BluetoothAdapter maintain a reference to a
IBluetooth proxy object (sService) and each class uses a lock object
to serialize access to their own reference. These references are updated
by BluetoothManagerService with registered callbacks (IBlueoothManagerCallback).
In the current implentaion, when an app thread uses BluetoothDevice#getService
to access its reference to service proxy, with the BluetoothManager updating it
at the same time, as the order of taking the locks is different, deadlock is possible
under certain circumstances (triggered in bug 241212710).
This patch fixes the deadlock issue by removing the reference to service
proxy object in BluetoothDevice class, and accesses are via
the reference in BluetoothAdapter class instead.
Test: existing unit tests
Bug: 241212710
Tag: #stability
Change-Id: I15cd2707acf5caa04d97c6ede3bd5bedd6475c65
(cherry picked from commit 83c6281b616f597ceacdcf84e20d14368e190875)
Merged-In: I15cd2707acf5caa04d97c6ede3bd5bedd6475c65
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous value and naming is dismatch with the publiched assigned
number, and the stack definition as well.
The patch includes the following modification
1. Correct the context type value
2. Align the naming and comment
3. Change the order based on the context type value
Bug: 240145498
Test: PTS test case and check the context type picker is the same
between bt stack and framework
Change-Id: Ib18d07a64a323791786ad60aa00bcfc0af712552
Merged-In: Ib18d07a64a323791786ad60aa00bcfc0af712552
(cherry picked from commit 56069e28133b031bb5d0e6753490f11788c48b51)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This CL adds Opus to the BluetoothCodecConfig, and sets the codec as the
default low latency codec.
Bug: 226441860
Test: A2dpCodecConfigTest BluetoothCodecConfigTest A2dpStateMachineTest
Tag: #feature
Ignore-AOSP-First: TM QPR1 Feature
Change-Id: Id94a7f8fab1a7f5e0199d757a70ff19010694fff
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit 448c2830336794d350b1c7c4f62c3e406b172e32.
Reason for revert: b/238847789
Test: Clean revert of CL
Change-Id: I30941e8b9344e9dbaacaec5ca2c2046d149ed839
|
| |
|
|
|
|
|
|
|
|
|
| |
returns the mAddress field of the device instead of null when the
identity address is not known.
Tag: #feature
Bug: 238353063
Test: atest AdapterServiceTest#testAddressConsolidate
Ignore-AOSP-First: Change needs to land in TM release
Change-Id: I577843c9e2cc279915d0632ff25bde66aa949e94
|
| |
|
|
|
|
|
|
| |
Bug: 217366135
Tag: #feature
Test: manual
Ignore-AOSP-First: to be chery-picked
Change-Id: If8ae530a284151888a3f89a51d2c58f2a5cd3644
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
getUuids was wrongly returning an empty array of Uuids when
fetchUuidsWithSdp had not been called. It now returns null
again.
Test: atest CtsBluetoothTestCases
Bug: 235456437
Tag: #feature
Ignore-AOSP-First: will be cherry-picked
Change-Id: If8aafc1b0ab4e253fdacc827726d76825b3bd1e4
|
| |\ \ |
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BluetoothAdapter#listenUsingInsecureRfcommWithServiceRecord
description was stating user should call
BluetoothDevice#createRfcommSocketToServiceRecord to
connect, but user should use
BluetoothDevice#createInsecureRfcommSocketToServiceRecord
instead.
Tag: #feature
Test: build
Bug: 235047894
Ignore-AOSP-First: cherry-pick
Change-Id: I6469862134d398bba8e9c738eaba081dc3ee6d65
Merged-In: I770a00dd99abab967590d100607a8b1292dc0492
|
| |/
|
|
|
|
|
|
|
|
| |
byte order
Tag: #feature
Bug: 233217148
Test: Manual (docs change)
Ignore-AOSP-First: Android T docs change
Change-Id: I5cab17003c22329744341235bb053cb55b4f7989
|
| |
|
|
|
|
|
|
|
|
| |
endian.
Tag: #feature
Bug: 233217148
Test: Manual (docs change)
Ignore-AOSP-First: Android T docs change
Change-Id: Iee36345088c886d5b43120bb10d8ddf52133de07
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* SettingsLib will use APIs getDeviceSideInternal() and
getDeviceModeInternal() to improve hearing aids experience and change
to formal call in next bluetooth release.
Bug: 224323976
Ignore-AOSP-First: AOSP will be updated later
Test: add private APIs only
Tag: #feature
Change-Id: I7ccb399cfe9b4e1fbf37d752dacbdceeb09f5b8d
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BluetoothMap and BluetoothSap are heavily using their getConnectionState
method. By caching the value I intend to reduce drastically the number
of binder calls generated.
While performing a discovery, the caching is working on 80% of binder
calls. This value should be bigger when we kepp asking the value for the
same device. (currently everytime you ask the connection state of a new
device, you refresh the cache, there is no caching for multiples
devices).
I don't have any Map/Sap setup to test it, asking to test team if they
hit some issues
Fixing cache on BluetoothDevice by passing the device as parameter
Doing a refactoring of all cached method in bluetooth to keep code
consistency: AKA we try to do the most of check outside of the cache
query
Bug: 217366135
Test: Put some log to see the value being cached sometimes - need more testing
Ignore-AOSP-First: No caching api on AOSP
Change-Id: Iababf9f9068a181e277b400e786a4a67d4447dc8
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Arrays.hashCode should be used when hasing arrays
Bug: 229790402
Test: atest CtsBluetoothTestCases
Change-Id: I940fa47195d12be6b8377e1025f4236cd10c05c4
Merged-In: I940fa47195d12be6b8377e1025f4236cd10c05c4
(cherry picked from commit 0267a3341e200b2758441f5868824b907effc946)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Supported roles are Call Gateway and Unicast Media Server
* Broadcast roles depend on runtime flag
* Also implemented a simple unit test
* Use objects factory in LeAudioService
Bug: 150670922
Bug: 229045392
Sponsor: @jpawlowski
Test: atest BluetoothInstrumantationTests
Change-Id: I91d6febda6ae080a5f6027312ec34e2e598d2a68
Merged-In: I91d6febda6ae080a5f6027312ec34e2e598d2a68
(cherry picked from commit 97d8ebdca766f4d5ee542ba55956059689e58c4c)
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
* changes:
BASS: PA_SYNC_STATE_FAILED_TO_SYNCHRONIZE in allowed for paSyncState
BASS: Fix BASS client service to pass CTS tests
Copy to std::string when parsing LE audio config
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Missed this value in earlier code iteration
Test: atest android.bluetooth.cts.BluetoothLeBroadcastReceiveStateTest
Bug: 230013261
Fixes: 230013261
Change-Id: I10c1fc206b7bdf7bf97e80bf1bc579e936021f37
Merged-In: I10c1fc206b7bdf7bf97e80bf1bc579e936021f37
(cherry picked from commit 81ed5b53a0e1ea5bc03ae412cca3425eedc28095)
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Through NullPointerException when asserting on non-null arguments
* Invoke error callback when sink device is not connected
* Assert on parameter value at binder client side
* Clear binder identity when checking DeviceConfig values
Test: atest CtsBluetoothTestCases
Bug: 229790402
Fixes: 229790402
Ignore-AOSP-First: Fixing CTS tests on T
Change-Id: Ie19cf24d2fe20948494643f3ce179d1a2c3a290f
Merged-In: Ie19cf24d2fe20948494643f3ce179d1a2c3a290f
(cherry picked from commit 9d0518ee6515bf0aeccdbd428485e7bd38f68f0b)
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To improve scenario when lead Le Audio device is disconnected for the
streaming group, while there are still other devices streaming,
LeAudioService will not notify audio framework or other users about
Le Audio lead device disconnection. Instead we try to reconnect under the hood
and keep using lead device as a audio device indetifier in the audio framework
in order to not stop the stream.
Bug: 150670922
Bug: 228809876
Test: atest BluetoothInstrumentationTests
Sponsor: @jpawlowski
Change-Id: I02b960c6a5a966b6650dc3485c5d3f6735e4566b
Merged-In: I02b960c6a5a966b6650dc3485c5d3f6735e4566b
(cherry picked from commit eaf4f412d8fa8000df3e7229eed0cd4f96f22249)
|
| |
|
|
|
|
|
|
| |
Test: atest 'CtsBluetoothTestCases:android.bluetooth.cts.BluetoothLeAudioCodecConfigMetadataTest#testCreateCodecConfigMetadataFromCopy'
Fix: 230012767
Ignore-AOSP-First: Tm-dev is cut-off, cherry-picking from aosp
Merged-In: I569ab7afca938b4e4f5d38bc134b14d4760f094c
Change-Id: I569ab7afca938b4e4f5d38bc134b14d4760f094c
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At AvrcpVolumeManager startup, we tried to read the sharedPref and to
save it in the memory. A clean is performed on this list to remove
non-bonded devices.
The issue here is that the getBondState was returning BOND_NONE for all
devices due to check perform on the adapter State.
We don't know why the adapter is not reported as STATE_ON at this point
but this check was added on all method to sanitize the shutdown process.
Because this is a cached value there is no risk from a crash at shutdown
Fix: 228415780
Ignore-AOSP-First: No caching done on AOSP
Test: Manual testing
Change-Id: I52362c3b511054abcb88e0cb83df95ba74c62ef4
|
| |\
| |
| |
| |
| |
| |
| |
| |
| | |
am: 131edeeae6 am: 7d8a537440
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2054085
Change-Id: I39bce832d21d52d0cc6b2c8c07f5ca062f7b94c4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
These can be already checked at the frameworks side.
Bug: 150670922
Tag: #feature
Test: atest CtsBluetoothTestCases:android.bluetooth.cts.BluetoothHapClientTest
Sponsor: jpawlowski@
Change-Id: I1b3d68594f5c96343080d4cf693bd41cce8be581
|
| | |\ \
| | |/
| |/| |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When verifying if Bluetooth is up in some APIs,
BluetoothDevice was only checking if the service is
null. When the adapter turns off, getState can return
STATE_OFF before the callback to inform the Adapter
of the new state is received, so the service isn't
null but the state is off for a brief period of time.
Adding the state checks along with the service checks
prevents being able to call an API when Bluetooth is off.
Bug: 214056525
Tag: #feature
Test: atest BluetoothDeviceTest
Merged-In: Ic387a19402ec6cd3e06677f554da8a8de695b4fc
Change-Id: Ic387a19402ec6cd3e06677f554da8a8de695b4fc
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
f836ba2d0c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2063178
Change-Id: Ib39bdd60a716eb373f2f2c59861b2cdc50682728
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ \ |
|
| | | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using synchronized on a instance of a writeLock is not something that
can work with read/write lock
Fix: 227963093
Test: build - Don't know how to reproduce such async behavior
Change-Id: I9f2be339a97e83f4f3a6034e71a40f632062fb09
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2058230
Change-Id: Idb2b411d66f8f50f907f156e61a11619969c7d97
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ \
| | |/
| |/|
| | |
| | |
| | | |
* changes:
broadcaster: Add passing broadcast metadata from native
broadcaster: Fix parceling subgroup
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adds the missing field write.
Bug: 150670922
Tag: #feature
Test: atest BluetoothLeBroadcastSubgroupTest
Sponsor: jpawlowski@
Change-Id: Ib795d8d89e07c1922a8e9a1547fc5bd560b469ac
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
76313b8a56 am: 0ab68b6c14
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2059434
Change-Id: I7650de8efed2b6b734186d6307752108810a4d3f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|