32 Commits

Author SHA1 Message Date
Amith Yamasani
27b89e6658 Rename bindService to bindServiceAsUser to follow convention.
This is for the multi-user version of bindService, not the original.

Change-Id: Ib2de35941196accf387b1a276a77e6f9af805ec0
2013-01-16 12:30:11 -08:00
Matthew Xie
af5ddbfcf5 Change getName and getAddress permission to BLUETOOTH
The permissions were set as BLUETOOTH_ADMIN by mistake. Correct them
bug 7665249

Change-Id: Ic1bdbeb25e8f55d886f9a8d38920cbb769dd38ca
2012-12-04 10:47:43 -08:00
Zhihai Xu
401202b5fe BT is still on after enable flight mode, and reboot the DUT
bug 7275625
Change-Id: I4f8952a06152eb5f5775c1f616f6383e4f20e352
2012-12-03 11:36:21 -08:00
Martijn Coenen
b1a01ab01c Merge "Allow the NFC process to call Bluetooth APIs." into jb-mr1.1-dev 2012-11-30 11:08:07 -08:00
Zhihai Xu
6eb7652b04 BluetoothManagerService call should allow SYSTEM_UID
bug 7561429

Change-Id: I1483bfe1361f71c7ae3529ea496b33504b95413e
2012-11-29 15:41:04 -08:00
Martijn Coenen
8385c5afbd Allow the NFC process to call Bluetooth APIs.
The NFC process used to be only running as user 0,
and it may be calling into Bluetooth. Most of the
handover code has now moved to a separate process
running as the current user.

Fix the existing checks to take into account the
correct NFC UID, whatever user it is running as.

Bug: 7309141
Change-Id: I953cfb263a28aef7fe1be5880b053425dc359a29
2012-11-29 10:17:47 -08:00
Zhihai Xu
e3f7c45241 Merge "Settings shows it is connected to A2DP, though the device is not actually connected" into jb-mr1.1-dev 2012-11-28 12:19:42 -08:00
Zhihai Xu
681ae7fc5e Cannot enable Bluetooth after using airplane and Bluetooth tethering sequentially
The root cause is we can't unbind blue service when bluetooth isnot disbaled
Otherwise the bluedroid stack will be out of sync with bluetooth service
only unbind bluetoothservice, when bluetooth is at OFF state.

bug 7376846

Change-Id: If5a11926f77a1ac29e75cdddbf5e90d492179f43
2012-11-14 18:05:29 -08:00
Zhihai Xu
4e22ad3504 Settings shows it is connected to A2DP, though the device is not actually connected
the root cause is the A2dp and Pbap service need receive STATE_TURNING_OFF intent
to shutdown cleanly. So we need send completely state transition intents
in user switch handler.

bug7403171

Change-Id: Ic92bc85c2b74ae7c95440b237ea8851771ee9f04
2012-11-13 15:11:26 -08:00
Zhihai Xu
d31c32217c Fix for BluetoothAdapter.getAddress() when BT is off on some devices
There are two problem, 1.If we have wrong bluetooth address in
global settings db, we never will update it 2. We need enable bluetooth
to get the bluetooth address for some devices. For 1, we fix it by add
a valid flag in global setting db, this flag will be set when we stored
correct address and name to db. We only load the name and address from
global setting db when this valid flag is set during power up.
For2. we will read BT address after bluetooth is at ON state.
bug 7440409

Change-Id: Ic4740b3f0b2fcd214c7ca8393f7331c140eec66d
2012-11-01 02:19:08 -07:00
Zhihai Xu
fa0fd39a4b License of files Bluetooth package is not updated to ASL2
bug 7385618

Change-Id: I6232f537f4fda979d3aabe3a059c11d3299de9b8
2012-10-23 17:31:56 -07:00
Matthew Xie
a517de36c4 Donot reset mEnable flag when binding timeout.
During start up, binding could take a while. When binding timeout
only reset mBinding but not mEnable.
bug 7328147

Change-Id: I306a84ca53d9e1d05111395642626e68d19e9663
2012-10-11 01:29:02 -07:00
Zhihai Xu
40874a096b Bluetooth multi-user updates: change bluetooth manager system service
to reject background user access. disable and enable Bluetooth when user is switched

bug 6925422

Change-Id: I52136e707da2d1ba8228c1bb8beef1414ead1893
2012-10-09 19:10:14 -07:00
Matthew Xie
fca9d63635 Add multi user support for bluetooth
Create a BLUETOOTH_STACK permission to share between all users of
Bluetooth apk. Bluetooth Manager binds to apk of current user
bug 6925422

Change-Id: I2df5546e977c2d77bc66d97d12479d933826922a
2012-10-04 18:35:42 -07:00
Matthew Xie
5e1c74dbbe Merge "Remove permission check in registerAdapter" into jb-mr1-dev 2012-09-25 21:04:15 -07:00
Matthew Xie
670ef53353 Remove permission check in registerAdapter
This matches the JB behavior of getDefaultAdapter public api
bug 6948829

Change-Id: I86135bf45fddbb2d078f855f91a34d6fcce237a2
2012-09-25 18:25:54 -07:00
Jeff Brown
bf6f6f9de7 Update references to migrated global settings.
Fixed one setting that was migrated but not marked deprecated.

Removed a hidden setting that is no longer used by the new
power manager service.

Bug: 7231172
Change-Id: I332f020f876a18d519a1a20598a172f1c98036f7
2012-09-25 15:27:51 -07:00
Christopher Tate
c09cdce1b0 Update airplane-mode manipulation for the new Settings namespace
Quick Settings and global actions (aka longpress-Power) toggles are
included in this CL.  The Settings app manipulations are updated in
a different CL because that's a different git package.

Bug 7132230

Change-Id: I50838f5e8d7b25a750d2bcae90bf384b09816dbb
2012-09-10 16:50:57 -07:00
Syed Ibrahim M
1223e5a311 Fault tolerance in Bluedroid
When bluetooth process gets crashed/killed/stopped by Android
system, BluetoothManagerService will re-start AdapterService
to recover from the crash appropriately.

Change-Id: Iacb1a06a8245089517bbbd57de1378ca8ce4b41e
2012-09-06 23:55:41 -07:00
Dianne Hackborn
5ac72a2959 Improve multi-user broadcasts.
You can now use ALL and CURRENT when sending broadcasts, to specify
where the broadcast goes.

Sticky broadcasts are now correctly separated per user, and registered
receivers are filtered based on the requested target user.

New Context APIs for more kinds of sending broadcasts as users.

Updating a bunch of system code that sends broadcasts to explicitly
specify which user the broadcast goes to.

Made a single version of the code for interpreting the requested
target user ID that all entries to activity manager (start activity,
send broadcast, start service) use.

Change-Id: Ie29f02dd5242ef8c8fa56c54593a315cd2574e1c
2012-08-30 14:33:22 -07:00
Ganesh Ganapathi Batta
fffa86ba83 Implement enableNoAutoconnect()
Adding enableNoAutoconnect() API support in Bluetooth service
 to let BT enable in quiet mode

Change-Id: I546f3ceb298082a9c9a698f406379470e3cc0d4f
2012-08-14 00:18:07 -07:00
Matthew Xie
cdce0b9897 Handle airplane mode messages in BroadcastReceiver, safe locking, etc
Handle airplane mode messages in BroadcastReceiver
Safe-lock the access of mBluetooth as a indication of binding state
break indent

Change-Id: Ib24ba0b1f5102c80e55e44b40a8dbf88bc2fad2e
2012-07-16 21:31:02 -07:00
Matthew Xie
6fde309807 Minor changes. Change some instance variables to be final.
Variable name changes, better code reability.

Change-Id: I9f0e9c8a57d4bacf0723be1f91d621c592860683
2012-07-16 21:30:10 -07:00
Fred
a8c6df0d3a Removed startService() call from BluetoothManagerService.
BT enable()/disable() are handled by using the binder interface

Change-Id: I0bb8d4984129706e424320241ca3ea7e12caf0d3

Conflicts:

	core/java/android/bluetooth/IBluetooth.aidl
2012-07-16 21:29:44 -07:00
fredc
bf072a712f Moved BluetoothAdapter.ACTION_STATE_CHANGED broadcast from AdapterService to BluetoothManagerService
Change-Id: I88e5f3fe050cf11eae9c5cf1b7c393a178b8f9b1
2012-07-16 21:28:12 -07:00
zzy
c2f5cc50f7 disable the sync addr flag 2012-07-16 21:27:44 -07:00
Andre Eisenbach
a732ffd8e0 Re-enable Bluetooth after a reboot, even if airplane mode is enabled.
This is to resolve Buganizer issue 6325950 and make the behaviour of
Blueooth and Wifi consistant.

Change-Id: Idd6cfa79136f7847e9e670d6d2aa0bf613b0381f
2012-07-16 21:26:26 -07:00
fredc
d6883533e4 Fixed socket not closing on BT off. Used RemoteCallbackList to monitor binder deaths in BluetoothManagerService.
Change-Id: I524964bd2836d8c5a4bae095b93ac9481337941d
2012-07-16 21:25:05 -07:00
fredc
116d1d4696 Fixed issue with getting Bluetooth adapter's name and airplane mode
Change-Id: I18b632223574aa41b09ba30de8e35417fad86cbe
2012-07-16 21:23:34 -07:00
fredc
649fe497ce Fixed BT on/off issues and added airplane mode handling
Change-Id: If39df19b99a3f45ebe82e89205d8bb0ff036e2a2
2012-07-16 21:22:56 -07:00
fredc
f24588615e Fixed issue with Bluetooth not turning on if enabled called twice in a row or disabled called twice in a row
Change-Id: I26cac2fa347934e0740578b811aa5a6767cf4862
2012-07-16 21:21:50 -07:00
fredc
0f42037eb7 Non persistent adapter service
Change-Id: Ib13d5c77416e58161df0e04d7a15ec0dddbde8b5

Conflicts:

	core/java/android/bluetooth/BluetoothInputDevice.java

Conflicts:

	core/java/com/android/internal/app/ShutdownThread.java
	services/java/com/android/server/SystemServer.java

Conflicts:

	services/java/com/android/server/SystemServer.java
	services/java/com/android/server/pm/ShutdownThread.java
2012-07-16 21:20:54 -07:00