Commit Graph

51 Commits

Author SHA1 Message Date
Jakub Rotkiewicz
97b113a660 bluetooth: Refactor BT Audio Codec list
* Show only selectable codecs to the user
* Removed redundant 'abstract' layer
* Disable codec selection when BluetoothA2dp, active device unavailable
  or HD Audio disabled.

Bug: 329809288
Bug: 346490998
Flag: EXEMPT - refactor
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.BluetoothCodecListPreferenceControllerTest
Merged-In: I56ebfeaf2cfa22ec253db897d7b7e96d1f8eee61
Change-Id: I23714715d9257479f5eac1a172ba1804da7e64e3
2024-08-27 20:15:01 +00:00
Jakub Rotkiewicz
c923103142 Bluetooth Codec Settings: Assure flag enabled
Assure flag a2dpOffloadCodecExtensibilitySettings is enabled before
calling BluetoothA2dp API.

Bug: 331612641
Tag: #feature
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.AbstractBluetoothListPreferenceController
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.BluetoothCodecListPreferenceControllerTest
Merged-In: Iac33a6c95a544230e034807b320c80a727ade307
Change-Id: I2b0ed6c7ac91401b958b206817aca55e0aa47170
2024-04-16 06:08:46 +00:00
Jakub Rotkiewicz
de27acef86 Refactor Bluetooth Codec settings to dynamic ListPreference
Fetch supported codecs from native and present to user using
ListPreference.

Bug: 305779598
Bug: 311451118
Bug: 323319530
Tag: #feature
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.AbstractBluetoothListPreferenceController
Test: atest SettingsRoboTests:com.android.settings.development.bluetooth.BluetoothCodecListPreferenceControllerTest

Merged-In: Iedbfd01c0d1b59df8a073f4e9aedca3913e6d45f
Change-Id: I90ed0d83c3250c64789e27707b0b7bff30043335
2024-03-21 11:06:18 +00:00
Chaohui Wang
2541381259 Fix references to resources for Settings
Bug: 293810334
Test: m Settings
Change-Id: Ie140278f492ef7e1c062ec1ecae2866c521a86aa
2023-08-08 01:56:05 +00:00
Treehugger Robot
9040efdccc Merge "Fix errorprone warnings that should be errors" am: 5744d7c560 am: 7094507528 am: 778ef161bb
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2255054

Change-Id: I1f3cbce7d5de6e63477bc2da2ad115ec53b06472
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-01 00:02:10 +00:00
Treehugger Robot
7094507528 Merge "Fix errorprone warnings that should be errors" am: 5744d7c560
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2255054

Change-Id: I65ce6c4fdedd32ff6feb4b5e210b508aafc4e589
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-31 22:57:02 +00:00
Cole Faust
43ff89802c Fix errorprone warnings that should be errors
This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:

BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower

See https://errorprone.info/bugpatterns for more
information on the checks.

Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I29f691a22617b1fc834680ff1cf4ab4244203f06
2022-10-23 12:41:39 -07:00
Omer Osman
dc7fdfa060 Update Opus over A2DP to use BluetoothCodecConfig api
Bug: 240635097
Test: sink device using bds-dev
Change-Id: Idd0a0c8a63dc969acbb10a88df5218507017e475
2022-08-25 04:10:18 +00:00
Omer Osman
b61e129f35 Add support for selection of Opus in Developer Options
Stub implementation for LC3 is added due to the interfaces being
present. The BT stack does not currently implement LC3 over A2DP.

Bug: 226441860
Test: BluetoothCodecDialogPreferenceControllerTest

Change-Id: I40546c97370872b37c0258d10e67a3871f9d9af5
2022-07-29 05:23:55 +00:00
Etienne Ruffieux
8db7f1a81d Replced BluetoothCodecStatus creator by Builder
Bug: 222540543
Test: atest BluetoothCodecsTest
Tag: #feature
Change-Id: I2585b1bac9044add2dd072ed2effc3e61e4b1223
2022-03-08 13:35:07 +00:00
Etienne Ruffieux
9692c59d3a Replacing getActiveDevice by btAdapter.getActiveDevices()
BluetoothProfile.getActiveDevice() is hidden, packages
should call BluetoothAdapter.getActiveDevices(profile)
instead.

Tag: #feature
Bug: 200202780
Test: build
Change-Id: Id18658de82a7e8292942951a3832a36465a69da3
2022-02-02 15:29:34 +00:00
Etienne Ruffieux
e004eaa51b Make BluetoothCodecConfig and BluetoothCodecStatus public
Tag: #feature
Bug: 200202780
Test: make RunSettingsRoboTests
Change-Id: I2a81216de050b143cee5c537d899a699d5012330
2021-11-10 10:12:51 +00:00
Tim Peng
07b3675717 Phone fails to switch channel mode from stereo to mono
-Set codec to SBC when HD audio is off

Bug: 194349060
Test: make -j50 RunSettingsRoboTests

Change-Id: Iae4aa3f1d77350f5b4d91e7a687e048091c1daea
2021-10-29 03:28:14 +00:00
Tim Peng
d6eb5237e2 [Fix]Test cast fail at BaseBluetoothDialogPreferenceTest
Bug: 181740451
Test: make -j50 RunSettingsRoboTests
Change-Id: I8b786272f50680e9e388ca64bb8d3410b85b327a
2021-03-03 17:02:07 +08:00
timhypeng
ce4dfc5c04 Set highest priority as default value to Bluetooth codec
-To set highest priority when codec modification comes from development setting

Bug: 165442632
Test: make -j42 RunSettingsRoboTests
Change-Id: I8cfbaa276f3b3e269f4a80e8aae987fbb90f646e
2020-09-01 15:28:59 +08:00
Rahul Sabnis
fc8115d91b Revert "Revert "Pass in active device to all BluetoothA2dp APIs ..."
Revert submission 10303287-revert-10253996-bt-a2dp-no-null-FQRXACWPIA

Reason for revert: Fixing breakage
Reverted Changes:
I4d9f2f819:Revert "Make sure calls to BluetoothA2dp APIs pass...
I771ca0d57:Revert "Need to now pass in active device instead ...
I76529c7a1:Revert "Pass in active device to all BluetoothA2dp...
I297bda68d:Revert "Require user pass in a non-null BluetoothD...
I525327959:Revert "Pass in active device to all BluetoothA2dp...
I1d8660b11:Revert "Pass in active device to all BluetoothA2dp...

Bug: 147287141
Test: robotests
Change-Id: I5aecfa4b5a8e371b914573ddd080acb98078bfca
2020-02-27 17:00:24 -08:00
TreeHugger Robot
377c11a815 Merge "Revert "Ignore two broken tests"" 2020-02-18 23:05:27 +00:00
Rahul Sabnis
91069d7b92 Revert "Ignore two broken tests"
This reverts commit 1958a27d24.

Reason for revert: Reverted CLs that caused the test failure

Change-Id: I93d7f1d4f95eb4982eff2f81b28b813c99f3b0ec
2020-02-14 19:15:20 +00:00
TreeHugger Robot
c4e63d7834 Merge "Ignore two broken tests" 2020-02-13 21:16:15 +00:00
Tsung-Mao Fang
1958a27d24 Ignore two broken tests
Bug: 149352891
Test: run robo test
Change-Id: I835e2170e1513fe5cfc2473c5537147c8d4eb113
2020-02-13 14:17:26 +08:00
Daniel Chapin
2be6fc2afe Revert "Pass in active device to all BluetoothA2dp APIs in packa..."
Revert submission 10253996-bt-a2dp-no-null

Reason for revert: b/149361880
Reverted Changes:
If43934374: Pass in active device to all BluetoothA2dp APIs in...
I22dd1ca36: Make sure calls to BluetoothA2dp APIs pass non-nul...
If6475af6f: Require user pass in a non-null BluetoothDevice to...
I9d0e2c89c: Pass in active device to all BluetoothA2dp APIs in...
I1faa6174d: Need to now pass in active device instead of null ...
I69a941a7e: Pass in active device to all BluetoothA2dp APIs in...

Change-Id: I1d8660b11c917cf657e61478d58794182e17ec1a
2020-02-12 17:16:10 +00:00
Rahul Sabnis
dcedd7d6f5 Pass in active device to all BluetoothA2dp APIs in
packages/apps/Settings as null input is no longer supported

Bug: 147287141
Test: Manual
Change-Id: If43934374914c657080ffd0509f8095d988cc550
2020-02-10 11:16:49 -08:00
timhypeng
c7edfa75de Fix robo test build error
- add atLeastOnce() because method would be called when init()

Bug: 147856265
Test: make -j42 RunSettingsRoboTests
Change-Id: I0bfe524caa674f7fe5895e3e30c8621b3c610bfc
2020-01-20 12:38:33 +08:00
hughchen
3bcd970171 Fix robo test build error
Bug: 147861843
Test: make -j42 RunSettingsRoboTests
Change-Id: I0ba094b955d94148bdd98cb78a1ca5c991275d49
2020-01-17 18:01:55 +08:00
timhypeng
9a8ec96e48 Unable to set Bluetooth configuration at the first time
- initial configuration value
- add test case

Bug: 147634692
Test: make -j50 RunSettingsRoboTests
Change-Id: If55036d358d664bcbcb816a38f18019c62976d38
2020-01-16 14:37:28 +08:00
tim peng
f455e1719e Merge "Add sample rate preference controller for Bluetooth developer option" 2019-12-13 07:09:08 +00:00
timhypeng
6ba89c33a4 Add sample rate preference controller for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I84198ae04221c2f28c1d8e596e4a8f295e7a76d1
2019-12-11 13:18:06 +08:00
tim peng
1e00dbf41c Merge "Add bit per sample preference controller for Bluetooth developer option" 2019-12-11 02:18:18 +00:00
tim peng
59d56cee0b Merge "Add quality preference controller for Bluetooth developer option" 2019-12-11 02:18:05 +00:00
tim peng
d8bb8b3383 Merge "Add channel mode preference controller for Bluetooth developer option" 2019-12-11 02:17:49 +00:00
tim peng
ea1106494d Merge "Add codec dialog preference controller for Bluetooth developer option" 2019-12-10 02:49:17 +00:00
TreeHugger Robot
821db5c036 Merge "Add sample rate preference for Bluetooth developer option" 2019-12-10 01:42:16 +00:00
timhypeng
6a1b765d74 Add quality preference controller for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I42b6ecdc0b661f9057db23405785351980f04056
2019-12-09 15:27:10 +08:00
TreeHugger Robot
41eff9f631 Merge "Add quality preference for Bluetooth developer option" 2019-12-09 06:06:37 +00:00
timhypeng
bd80f7f949 Add channel mode preference controller for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: Ibf2238ee8b5d3a9d91ea40fea16aa44583a22cc0
2019-12-09 13:38:49 +08:00
TreeHugger Robot
efa2229556 Merge "Add channel mode preference for Bluetooth developer option" 2019-12-09 05:37:21 +00:00
timhypeng
8b5790dcc0 Add bit per sample preference controller for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I8cde0d80d3533368dce6d101d49036fc97627526
2019-12-09 13:17:25 +08:00
timhypeng
8e2aa11e3a Add codec dialog preference controller for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I5cff61f9f90d9e6a125455685a3608be043f6e7c
2019-12-09 13:14:58 +08:00
tim peng
e655695690 Merge "Add bit per sample preference for Bluetooth developer option" 2019-12-09 05:12:12 +00:00
timhypeng
588a1ca250 Add sample rate preference for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I5cae9498082d1839add63d2bc01e29639a0c20ee
2019-12-09 13:10:28 +08:00
timhypeng
dc05caec4d Add quality preference for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I025557ec0977a1585cf65bfacc4a01020c9ea19a
2019-12-09 12:55:45 +08:00
timhypeng
4db1f25f3b Add channel mode preference for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: Iace94d24d8d395366c8fb78863d2fe09ecd0f60d
2019-12-09 12:31:30 +08:00
timhypeng
19f0230520 Add bit per sample preference for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: Idaf9be96f4e48acf46cbf53ae7f7d100db002c7c
2019-12-09 11:27:10 +08:00
tim peng
d100099ecc Merge "Add codec dialog preference for Bluetooth developer option" 2019-12-09 03:21:47 +00:00
timhypeng
2e5dabf88b Add codec dialog preference for Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I27966cedf915b66e6ce1e4ece2fd854dc21a2841
2019-12-06 15:37:14 +08:00
timhypeng
bea3a6e6c8 Add new HD audio preference controller for Bluetooth developer option
- move HD audio switch from codec to upper layer

Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: Ic9a3aa9666d2e105c762fec818c9a47383a6ecd2
2019-12-04 13:04:12 +08:00
tim peng
cef4313ea0 Merge "Add base dialog preference controller for new Bluetooth developer option" 2019-12-03 07:12:17 +00:00
tim peng
1082bca0ee Merge "Add base preference controller for new Bluetooth developer option" 2019-12-03 07:12:17 +00:00
timhypeng
78b0edfe3c Add base dialog preference controller for new Bluetooth developer option
Bug: 142227996
Test: manual
Change-Id: I15335d9c783b5ddba1b93322449f345f450d587f
2019-12-03 09:35:53 +08:00
timhypeng
54d06d368d Add base preference controller for new Bluetooth developer option
Bug: 142227996
Test: make -j50 RunSettingsRoboTests
Change-Id: I9d10019228bc575f4ac38494e4dd27d672d5da6d
2019-12-02 14:45:42 +08:00