| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
Ignore-AOSP-First: Merge conflict
Change-Id: Ic387a19402ec6cd3e06677f554da8a8de695b4fc
|
| |\
| |
| |
| |
| |
| |
| |
| | |
20756a9aa9 am: 2f52d18c6a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/1998179
Change-Id: Ied125d9dd48e9eb1c99ccef6075ef0bd9657438b
|
| | |\ |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 221369251
Test: atest BluetoothInstrumentationTests
Tag: #feature
Change-Id: I304f6b6656138859628b7397f682df997a3a3e0f
|
| |\ \ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
> Can you make EXTRA_REASON an 'unsupported app usage' alias for
> EXTRA_UNBOUND_REASON (which is in the public API)?
> And add a max target SDK to the @UnsupportedAppUsage annotation.
Bug: 221851154
Test: Build + TH
Tag: #refactor
Ignore-AOSP-First: Merge conflict
Change-Id: I7aa94fc5cf78f275e8e3da665e1ec8b6f1611dcc
|
| |\ \ \ \
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
am: 1775d3764c am: 4e3e368fde
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2018895
Change-Id: Id2da0e0ff098aca837ee9e30323eab0faff2a2b4
|
| | |\ \ \ |
|
| | | | |/
| | |/|
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 223356348
Test: build (only doc modified)
Tag: #feature
Change-Id: I89606d0905d44dd85ae57104da260ce51e8c1568
|
| |\ \ \ \
| |_|_|/
|/| | |
| | | | |
feedback" into tm-dev
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Tag: #feature
Bug: 202102309
Test: Manual
Ignore-AOSP-First: Original change is only in internal branches
Change-Id: I9afe1e4701690bed0f27fba912abd5e696030878
|
| |\ \ \ \
| |/ / /
|/| / /
| |/ /
| | |
| | |
| | |
| | | |
14ce8d3779 am: ba29d7e073
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2026503
Change-Id: Ia669f5dea0fd419ea8a0b275e3845cd16a14ac31
|
| | |/
| |
| |
| |
| |
| |
| | |
Bug: 221851154
Test: No
Tag: #refactor
Change-Id: I8df00bd0a73207117b05a89dc916707f74e970e3
|
| |\|
| |
| |
| |
| |
| |
| |
| | |
instruction" am: acdd96105e am: 41093d3f10 am: c06c8e68bc
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/1973344
Change-Id: Ia7f5cf6416da2a67774d2d24f07cfe536236af70
|
| | |\
| | |
| | |
| | | |
instruction"
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Bug: 216832331
Test: Build
Change-Id: I7bd3caf13521d9a1f3c9c05d0f154544af097911
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* isMandatoryCodec is now public
* SCAN_FAILED_OUT_OF_HARDWARE/SCANNING_TOO_FREQUENTLY is now public with a
IntDef (method using the value are changed accordingly)
* Update doc for EXTRA_BATTERY_LEVEL and EXTRA_PAIRING_INITIATOR and
ACTION_CONNECTION_STATE_CHANGED
* Add Autoclosable to BluetoothSap to remove the NotCloseable
* BluetoothClass.Device.PERI* are now public
Bug: 222725037
Fix: 221851154
Test: Build + TH
Tag: #refactor
CTS-Coverage-Bug: 222539659
Merged-In: Ia6aa778d6bdc0319266c52a84633ee593eaa7eb0
Change-Id: Ia6aa778d6bdc0319266c52a84633ee593eaa7eb0
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* isMandatoryCodec is now public
* SCAN_FAILED_OUT_OF_HARDWARE/SCANNING_TOO_FREQUENTLY is now public with a
IntDef (method using the value are changed accordingly)
* Update doc for EXTRA_BATTERY_LEVEL and EXTRA_PAIRING_INITIATOR and
ACTION_CONNECTION_STATE_CHANGED
* Add Autoclosable to BluetoothSap to remove the NotCloseable
* BluetoothClass.Device.PERI* are now public
Bug: 222725037
Fix: 221851154
Test: Build + TH
Tag: #refactor
CTS-Coverage-Bug: 222539659
Ignore-AOSP-First: merge conflict resolution
Change-Id: Ia6aa778d6bdc0319266c52a84633ee593eaa7eb0
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 214455273
Tag: #refactor
Convert all references to PropertyInvalidatedCache into references to
os/IpcDataCache. IpcDataCache has the necessary system APIs for
mainline modules. Any system APIs in PropertyInvalidatedCache will be
deleted.
Manual testing was done by pairing a phone with a headset and
verifying that the caches were in use via 'dumpsys cacheinfo'.
Test: presubmit
Change-Id: Ia9ebc89ba6fc8d1c3757dcb141b37a59a0b3f713
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
627c75137f am: 43c9825758
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/1952637
Change-Id: I537e81d8bb6c9fd8306e367f9f599412d047ed40
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
BT LE broadcast assistant implementation
Test: compile
Tag: #feature
sponsor: siyuanh@
Change-Id: Ia183608f3551319f79f8e2aa933445346c42c028
Signed-off-by: Myles Watson <mylesgw@google.com>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 217352944
Test: Build
Tag: #refactor
Merged-In: I92007320df801df53e797873048b654cf376ed31
Change-Id: I92007320df801df53e797873048b654cf376ed31
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
internal cherry-pick
Bug: 216476895
Test: Compile
Tag: #refactor
Change-Id: I09108622038b174104457ca18ac6ec7949978f66
Merged-In: I09108622038b174104457ca18ac6ec7949978f66
CTS-Coverage-Bug: 217352944
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Rename BluetoothLeBroadcastSourceInfo to
BluetoothLeBroadcastReceiveState so that it matches the name in the
Bluetooth specification
* Added callbacks to BluetoothLeBroadcast so that caller that wait
for asynchronouze operations with reason code in the hope to reduce
potential race conditions
* Allow multiple broadcast to be set up on the same deivce if the device
supports it
* Added ScanFilter to searchForSources() method and removed
selectSources() method for BluetoothLeBroadcastAssistant so that the
Bluetooth stack can automatically handle periodic sync after a
Broadcast source is found and only do this for a limited number of
devices
* Added structural APIs to store Broadcast Source and Group information
* Added unknown address type in BluetoothDevice
Bug: 208222281
Test: make
Tag: #feature
Ignore-AOSP-First: Merge conflict in master
Change-Id: If4c3af658b5bc1283d76e5d1899485a487ab7626
Merged-In: If4c3af658b5bc1283d76e5d1899485a487ab7626
(cherry picked from commit 4f9d902028fbe271167547884c33fb9ec7601080)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 197044261
Bug: 216305555
Test: build pass
Tag: #feature
Change-Id: Ia62e9e3ee8934b3afc5e98d41caf40ddb5e47fc5
Merged-In: Ia62e9e3ee8934b3afc5e98d41caf40ddb5e47fc5
(cherry picked from commit 139b970aa9e9c91e52524b2354895e58467d3554)
|
| | |\ \ |
|
| | | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 215724286
Test: cts
Tag: #feature
Change-Id: Id6415cf5f0236a82cb294538c22b5dc22555a6ff
Merged-In: Id6415cf5f0236a82cb294538c22b5dc22555a6ff
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since Bluetooth is becoming a mainline module, it can no longer call the
allowBlocking hidden api.
Instead, corresponding aidl are moved to be oneway and use a synchronous
data to handle the return value.
also: aosp/1927380 for similar work on all bluetooth profiles
BluetoothGatt will be done next
Bug: 211851706
Test: build + start bt
Tag: #refactor
Change-Id: I715cc2d8f2ae42be6d1099cd73095d37fa9e30f4
Merged-In: I715cc2d8f2ae42be6d1099cd73095d37fa9e30f4
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit b13a1a0131e2b831f313409c70dd73b4fecdb100.
Reason for revert: Fixing original CL
Some code was left commented in original CL
Change-Id: Ib834ebbec25d502ecab6bc78987f56fc6ff23b44
Fix: 214455273
Tag: #refactor
Test: Manual testing
Ignore-AOSP-First: No such api in aosp
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 3e8fdcf3a141216196c27c15eed57cb7d0913877.
Reason for revert: Bug: 219424192
Test: No test.
Change-Id: Ibe7e246a85d048d55904f2a2f61ec5ac1f97a449
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Bug: 214455273
Tag: #refactor
Re-enabled binder caches in the Bluetooth mainline module.
Manual testing was done by pairing a phone with a headset and
verifying that the caches were in use via 'dumpsys cacheinfo'.
Test: presubmit
Change-Id: I1948f22d2b0ca43152468cebf5395b786fd68ab0
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This partially revert ag/16736843 as there is already the
cancelBondProces exposed as systemAPI
Bug: 217352944
Test: Build
Tag: #refactor
Ignore-AOSP-First: api is not expose on aosp
Change-Id: I92007320df801df53e797873048b654cf376ed31
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Bug: 216476895
Test: Compile
Tag: #refactor
Ignore-AOSP-First: AOSP will be updated later
Change-Id: I09108622038b174104457ca18ac6ec7949978f66
CTS-Coverage-Bug: 217352944
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since Bluetooth is becoming a mainline module, it can no longer call the
allowBlocking hidden api.
Instead, corresponding aidl are moved to be oneway and use a synchronous
data to handle the return value.
also: aosp/1927380 for similar work on all bluetooth profiles
BluetoothGatt will be done next
Bug: 211851706
Test: build + start bt
Tag: #refactor
Ignore-AOSP-First: merge conflict resolution
Change-Id: I715cc2d8f2ae42be6d1099cd73095d37fa9e30f4
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Rename BluetoothLeBroadcastSourceInfo to
BluetoothLeBroadcastReceiveState so that it matches the name in the
Bluetooth specification
* Added callbacks to BluetoothLeBroadcast so that caller that wait
for asynchronouze operations with reason code in the hope to reduce
potential race conditions
* Allow multiple broadcast to be set up on the same deivce if the device
supports it
* Added ScanFilter to searchForSources() method and removed
selectSources() method for BluetoothLeBroadcastAssistant so that the
Bluetooth stack can automatically handle periodic sync after a
Broadcast source is found and only do this for a limited number of
devices
* Added structural APIs to store Broadcast Source and Group information
* Added unknown address type in BluetoothDevice
Bug: 208222281
Test: make
Tag: #feature
Ignore-AOSP-First: Merge conflict in master
Change-Id: If4c3af658b5bc1283d76e5d1899485a487ab7626
|
| |\ \ |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 215724286
Test: cts
Tag: #feature
Change-Id: Id6415cf5f0236a82cb294538c22b5dc22555a6ff
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Bug: 197044261
Bug: 216305555
Test: build pass
Tag: #feature
Change-Id: Ia62e9e3ee8934b3afc5e98d41caf40ddb5e47fc5
|