Commit Graph

1061 Commits

Author SHA1 Message Date
TreeHugger Robot
852a19b7a6 Merge "Fix phishing attacks over Bluetooth due to unclear warning message" 2020-12-17 08:46:03 +00:00
Hugh Chen
db9175015a Fix phishing attacks over Bluetooth due to unclear warning message
Before this CL, there is a possible phishing attack allowing a malicious
BT device to acquire permissions based on insufficient information
presented to the user in the consent dialog. This could lead to local
escalation of privilege with no additional execution privileges needed.
User interaction is needed for exploitation.

This CL add more prompts presented for users to avoid phishing attacks.

Bug: 167403112
Test: send intent to test right prompts message is pop up. make -j42 RunSettingsRoboTests
Change-Id: Idc6ef558b692115bb82ea58cf223f5919b618633
2020-12-17 11:29:31 +08:00
TreeHugger Robot
6172a98b2b Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c am: 2117006bc6 am: cfdae774cd am: 635029b87f am: f49e9d2196 am: 423bcb4fbe
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I01cfff4403d6e3499ae2608e34b9184b6358097f
2020-12-09 14:31:49 +00:00
TreeHugger Robot
f49e9d2196 Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c am: 2117006bc6 am: cfdae774cd am: 635029b87f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I36f99bfb1e5eee253bb4ce030d7000cb40c2ff63
2020-12-09 13:49:10 +00:00
TreeHugger Robot
635029b87f Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c am: 2117006bc6 am: cfdae774cd
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iad91ec439965d52c652f79ce4d6fe3b125631f79
2020-12-09 13:03:53 +00:00
TreeHugger Robot
cfdae774cd Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c am: 2117006bc6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: If3605d2b4dbad8b7b4979b644c89352ee8449ba1
2020-12-09 12:17:08 +00:00
TreeHugger Robot
2117006bc6 Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7d7dcaefd10f297c9e268d8f9d8bf666d98b08fd
2020-12-09 12:08:40 +00:00
TreeHugger Robot
504b96d76c Merge "Add bluetooth package to permission request intent" into oc-mr1-dev 2020-12-09 12:06:33 +00:00
Jakub Pawlowski
c721dc5bad Prevent overlay drawing on top of Bluetooth activity dialog am: b29c036522
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13090436

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I956e8906633af45f12617dabbec4e060c14502f2
2020-12-09 11:32:56 +00:00
Jakub Pawlowski
b29c036522 Prevent overlay drawing on top of Bluetooth activity dialog
Bug: 168504491
Merged-In: I04ebe580db2b299af2bd5e44e0b0f20bd42f8535
Change-Id: I04ebe580db2b299af2bd5e44e0b0f20bd42f8535
2020-12-09 08:00:22 +00:00
TreeHugger Robot
8911c5b632 Merge "Prevent overlay drawing on top of Bluetooth activity dialog" into qt-dev am: 721f43dcdc am: 537c730ca2 am: 4c4f83eb21 am: f0322276a7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13090438

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0e3add9dbe9dd2f5544ae64889282d1235add8c2
2020-12-09 00:48:28 +00:00
TreeHugger Robot
4c4f83eb21 Merge "Prevent overlay drawing on top of Bluetooth activity dialog" into qt-dev am: 721f43dcdc am: 537c730ca2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13090438

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ic39ad9f7212cdb757f79c61e23c84ac614e73fed
2020-12-08 23:58:02 +00:00
TreeHugger Robot
537c730ca2 Merge "Prevent overlay drawing on top of Bluetooth activity dialog" into qt-dev am: 721f43dcdc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13090438

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9c3d91f901bc38554732ff2cc428232f117efea0
2020-12-08 23:27:51 +00:00
Hugh Chen
5caaded598 Fix advanced device icon won't update issue
Add refresh() in onStart() state to fix UI won't update
when resume the activity.

Bug: 174728714
Test: make -j42 RunSettingsRoboTests
Change-Id: I86d21486c1466aa466ef67db667b3a40cd90230c
2020-12-07 16:28:17 +08:00
Jakub Pawlowski
4f7edf692f Prevent overlay drawing on top of Bluetooth activity dialog
Bug: 168504491
Change-Id: I04ebe580db2b299af2bd5e44e0b0f20bd42f8535
2020-11-19 13:47:53 +01:00
Chris Manton
1951d27669 Add bluetooth package to permission request intent
Limit the component that may resolve this intent to the
bluetooth package.

Bug: 158219161
Test: Security Fix
Tag: #security
Change-Id: If732f940a7aa256f5975349118e8eb6cf5584676
2020-11-19 10:20:24 +00:00
Hugh Chen
60ce7bebcf Fix anr issue on connected devices settings
Before this CL, connected devices settings will use ContentResolver
to get advanced device bitmaps on the UI thread. It will have a little
chance to cause ANR.

This CL uses background thread to get a bitmap to fix ANR issue.

Bug: 173283590
Test: Test: make -j42 RunSettingsRoboTests
Change-Id: I987759a775d507003fd4ef54f5376bd24e660b3b
2020-11-18 17:37:56 +08:00
Hugh Chen
40d4e47b05 Add the explicitly mutable flag for creating a PendingIntent
- Android S+ to specify explicitly either FLAG_MUTABLE or FLAG_IMMUTABLE
  when creating a PendingIntent.
- Suggest to use the FLAG_IMMUTABLE as default. Change it to
  FLAG_MUTABLE while errors occur.

Fixes: 172207262
Fixes: 172207195
Fixes: 172205385
Fixes: 172204525
Fixes: 172205897
Test: build pass, manual test to paring blutooth device and doing
seamless transfer

Change-Id: Ic37b37bdbe6de6bdbad741985d3a920334240d80
2020-11-04 10:59:34 +08:00
Sunny Shao
0b0f237834 Add the explicitly mutable flag for creating a PendingIntent
- Android S+ to specify explicitly either FLAG_MUTABLE or FLAG_IMMUTABLE
  when creating a PendingIntent.
- Suggest to use the FLAG_IMMUTABLE as default. Change it to
  FLAG_MUTABLE while errors occur.

Fixes: 170162598
Fixes: 170162878
Fixes: 170163592
Fixes: 170164316
Fixes: 170164458
Fixes: 170164327
Fixes: 169794524
Fixes: 170165106
Test: build pass, manual test add an account and volume control panel
Change-Id: I5aec028f82bd74fc4530b95a7c144811055ae2c5
2020-10-14 09:38:51 +00:00
TreeHugger Robot
2e307f804a Merge "Revert "Add the FLAG_IMMUTABLE flag for creating a PendingIntent"" 2020-10-08 01:42:50 +00:00
Daniel Chapin
ee1360f13c Revert "Add the FLAG_IMMUTABLE flag for creating a PendingIntent"
This reverts commit 334968c113.

Reason for revert: Bug: 170280415

Change-Id: Idaa269406d6c1609c75f0dfba1f7fa9daf979101
2020-10-07 17:47:36 +00:00
TreeHugger Robot
2489494cd3 Merge "Implement advanced device battery prediction" 2020-10-07 02:14:16 +00:00
Hugh Chen
fa75a469da Implement advanced device battery prediction
This CL implements prediction of advanced device to
let users know what time their advanced device will
be out of battery.

Bug: 153706138
Test: make -j42 SettingsGoogle
Change-Id: Iadf2f1fa425ff5f0fa1abed681d82d13c392db62
2020-10-06 17:38:08 +08:00
Sunny Shao
334968c113 Add the FLAG_IMMUTABLE flag for creating a PendingIntent
- Android S+ to specify explicitly either FLAG_MUTABLE or FLAG_IMMUTABLE
  when creating a PendingIntent.

Fixes: 170162598
Fixes: 170162878
Fixes: 170163592
Fixes: 170164316
Fixes: 170164458
Fixes: 170164327
Fixes: 169794524
Fixes: 170165106
Test: build pass and manual test add an account
Change-Id: I0f7b117273647dbe9e146033b8995c8c6f147576
2020-10-06 11:46:08 +08:00
Hugh Chen
cafeab2813 Fix the device on "Media devices" wouldn't update
- This CL use new CachedBluetoothDevice callback instance
  in construct to avoid unregister wrong callback.
- This CL use flag to make sure preference will register
  callback on onAttached() when preference remove callback
  on onPrepareForRemoval() or onDetached().
- Update test case

Bug: 168682778
Bug: 157653997
Test: make -j42 RunSettingsRoboTests
Change-Id: I7a0d9f5332153ee80634e191847b84cd7c380b7d
2020-09-17 08:45:12 +00:00
TreeHugger Robot
168f468c92 Merge "Add permission to protect data when sending broadcast" 2020-09-11 08:20:43 +00:00
Hugh Chen
75dea8ea80 Add permission to protect data when sending broadcast
This CL before, DevicePickerFragment didn't check the
whether 3rd-party app have Bluetooth permission before
sending broadcast. It's will cause the 3rd-party app can
get Bluetooth device information without request permission.

This CL will send broadcast with Bluetooth permission that
make sure the receiver who have Bluetooth permission can get
this Bluetooth device infomation.

Bug: 161716630
Test: verify on test apk to confirm that not showing mac address.
Change-Id: I6662dc38b3491e5ee467058dd74863ecac27cdd7
2020-09-11 15:15:34 +08:00
Hugh Chen
a6aae425bc Fix settings crash
- This CL before, "Previously connected device" didn't
  handle dock device. If user have disconnected dock
  device will cause Settings crash.

  This CL add condition to handle dock device to avoid crash.
- Update test case.

Bug: 167054620
Test: make -j42 RunSettingsRoboTests
Change-Id: I769cee3f589e14a993b00a0ae6ec3ddfba8ef281
2020-09-02 17:14:30 +08:00
timhypeng
9743fed57d Show all devices, including connected ones, into "Previously connected" page
-Add connected devices in "Previously connected" page
-Set active when clicking a connected device

Bug: 147150246
Test: make -j50 RunSettingsRoboTests
Change-Id: I4422cd63c360a4387cedc4f80f34474b42f82a1f
2020-08-05 11:28:15 +00:00
Chen Chen
a9ffaaec62 BluetoothPairingRequest: Add null check for action am: 1805f666e7 am: e8dd64f891
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12214808

Change-Id: Ic34c9a8730c108d1d67eaeaeccdac2ab9c5ca9dd
2020-07-24 22:25:07 +00:00
Chen Chen
1805f666e7 BluetoothPairingRequest: Add null check for action
Bug: 159728132
Test: Build

Change-Id: I24668e20accf96c7469c9e1ab589b1383ab59d18
2020-07-24 18:15:19 +00:00
Jakub Pawlowski
c49fcef907 Prevent overlay drawing on top of Bluetooth discovery request dialog am: ba7f6d7d45
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11986974

Change-Id: Ice5a98b7d2c10e9ee62ed20da7aa9213d18a4d8b
2020-06-26 20:06:25 +00:00
Jakub Pawlowski
ba7f6d7d45 Prevent overlay drawing on top of Bluetooth discovery request dialog
Bug: 155650356
Change-Id: I9cee6e5bb8cef77aa385d664fe0738db1496ef20
Merged-In: I9cee6e5bb8cef77aa385d664fe0738db1496ef20
(cherry picked from commit ac67100423)
2020-06-24 19:02:54 +00:00
Jakub Pawlowski
138dbb86cc Prevent overlay drawing on top of Bluetooth pairing dialog am: f3afef8419
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11953485

Change-Id: I41bd60685dc58028a328c041ca4532b42881cec7
2020-06-22 19:03:01 +00:00
Jakub Pawlowski
f3afef8419 Prevent overlay drawing on top of Bluetooth pairing dialog
Bug: 155648639
Change-Id: I99643ee9084f3a9bc1ad9a459ac27c587d832c91
Merged-In: I99643ee9084f3a9bc1ad9a459ac27c587d832c91
2020-06-22 17:35:40 +02:00
Myles Watson
0d31c37df9 Bluetooth: Add pairing initiator extra
Bug: 150156492
Test: pair two devices, unpair on one device, try to reconnect
Change-Id: I96379d0afe5b624f09e2825dedaef8f9883a924c
2020-06-13 07:04:14 -07:00
Jakub Pawlowski
a44860c880 Prevent overlay drawing on top of Bluetooth discovery request dialog am: c48d63752a am: e61467cd6c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11484059

Change-Id: Ib9bde83d8d0d5a81dcde8d7d6723a51d55663610
2020-06-08 06:12:33 +00:00
Jakub Pawlowski
e61467cd6c Prevent overlay drawing on top of Bluetooth discovery request dialog am: c48d63752a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11484059

Change-Id: I3572c16dd2b47189dc26ae4cd99f569d32b6ae2a
2020-06-08 05:55:40 +00:00
Jakub Pawlowski
c48d63752a Prevent overlay drawing on top of Bluetooth discovery request dialog
Bug: 155650356
Change-Id: I9cee6e5bb8cef77aa385d664fe0738db1496ef20
2020-06-04 06:45:16 +00:00
Jakub Pawlowski
3185f80f23 Prevent overlay drawing on top of Bluetooth pairing dialog am: 88815d1456 am: 103cc7cf29
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11484060

Change-Id: Ifbdd0f3dabc0b487bfb5155f786cae6a9980557b
2020-06-03 10:18:46 +00:00
Jakub Pawlowski
103cc7cf29 Prevent overlay drawing on top of Bluetooth pairing dialog am: 88815d1456
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/11484060

Change-Id: Ib47c1804cbb29942c33152d72e1019c92f0d3856
2020-06-03 09:59:18 +00:00
hughchen
1df322225b Add bottom padding of profile group on Bluetooth detail page
- This CL add a bottom padding preference to make UI consistency.
- Update test case

Bug: 146522686
Test: make -j42 RunSettingsRoboTests
Change-Id: I525d8a3b71535972755de92924a3c04768f68e63
2020-05-18 13:17:15 +08:00
Jakub Pawlowski
88815d1456 Prevent overlay drawing on top of Bluetooth pairing dialog
Bug: 155648639
Change-Id: I99643ee9084f3a9bc1ad9a459ac27c587d832c91
2020-05-14 09:18:52 +00:00
hughchen
6060bc66e5 Add low battery level for case
- Add low battery level for case, because case and headset have
  different low battery level.
- Update test case

Bug: 154569936
Test: make -j42 RunSettingsRoboTests
Change-Id: Icf045b62992dde8d789e66343764849e43df1933
2020-05-08 15:15:15 +08:00
hughchen
47994dea19 Add log for debug
This CL use flag to decide which log should be show on.
This flag can be dynamic turn on when use below command:
adb shell setprop log.tag."your tag" VERBOSE

Bug: 155121301
Test: manually test
Change-Id: I0f3a28c11f6bd055efc84feb41d646b6c033f5b7
2020-05-05 11:26:28 +08:00
hughchen
828ccaf399 Update low battery level for advance bluetooth device
Bug: 154569936
Test: build pass
Change-Id: I52bb8eea4f69ae55a6902e3afb862aa8c7319785
2020-04-24 11:41:59 +08:00
alictsai
6b76eb0ab6 Device details LCR should be show up " ! " with low battery.
screenshot:
https://screenshot.googleplex.com/f72YS3THutW.png
https://screenshot.googleplex.com/v6uw7XsOs9x.png

Bug: 151187813
Test: make -j42 RunSettingsRoboTests
Change-Id: Iabb4ac54e6f827f54cd7c5512995f185875e4a06
2020-03-27 13:14:01 +08:00
Sunny Shao
3d3757683c Update the OWNER files
Bug: 151179432
Test: manual review
Change-Id: I2bfd917c2bea2d71303ed9aecf29d850f12eec3d
2020-03-11 16:45:14 +08:00
Jason Chiu
130629b1db Show paired devices on Bluetooth device slice card
- support tapping to activate for all available media devices including
  Hearing aid and Headset
- support tapping to connect for previously connected devices

Bug: 149667096
Test: robotest
Change-Id: I25f74b1b20fbb1876200a561775aa675ff60ac37
2020-03-09 17:43:29 +08:00
hughchen
76dcfdedf2 Fix incorrect UI issue of "previously connected devices"
This CL before, the bt device still showing on
"previously connected devices" after forgot that bt device.
It because the list of getMostRecentlyConnectedDevices()
will not include BOND_NONE device. We need to remove the
device that not include in list of getMostRecentlyConnectedDevices() .

This CL add removePreferenceIfNecessary() to check the device whether
is contained in getMostRecentlyConnectedDevices(). If not, remove the
preference.

Bug: 149193092
Test: make -j42 RunSettingsRoboTests
Change-Id: I94bedf222b64d9f05dc6f979b79dbc8794c0f97d
2020-02-10 19:16:56 +08:00