History log of /frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
414011116777e66bb3364fa86b856aa3574edbfa 28-Jun-2016 Pavlin Radoslavov <pavlin@google.com> Add extra waiting when switching users

If disabling Bluetooth times out, wait for an additional amount of time
to ensure the process is shut down completely before attempting to restart.

Bug: 29738770
Change-Id: I43dec35a1e03d12cb07863babea97d55baa32528
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
a0b91d77d62020652b7f003326ffe11c7e4d87c2 16-Jun-2016 Calvin On <con@google.com> Fix race with BT disable in BLE_ON_STATE

This will restart the BT stack when it detects a transition
into OFF state while the user enable flag (mEnable) is set.

Bug: 29363429
Change-Id: I9839119b34c4694ad92e96240c6989008b2f8d52
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
7ee53be300573c9bdc71607d32d4a642e4ad3dc8 09-Jun-2016 Pavlin Radoslavov <pavlin@google.com> Unlock mBluetoothLock.readLock() instead of double-locking it

Bug: 29011117
Change-Id: Ie9e359c3ee079c2cecc33f11cfff7c0dc6406be1
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e47ec14318f64c29bf16b5a6bb662bc19206d6b0 02-Jun-2016 Pavlin Radoslavov <pavlin@google.com> Delay handleEnable() until Bluetooth state is OFF

During shutdown of the Bluetooth stack, if a request to
enable Bluetooth is received, the request is processed immediately.
As a result, we don't let the Bluetooth service to shutdown cleanly,
and the Bluetooth process with the native backend doesn't go away.
This creates various issues in the native backend stack.

Now, after an enable request is received, if necessary we delay
acting on it, until the Bluetooth state is OFF.

Bug: 17723234
Change-Id: I55db4bbd4f45227aa49eae996dcc328f76557a9b
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e957a8a0b4100d001f79c866e7904d2426ac8da0 25-May-2016 Pavlin Radoslavov <pavlin@google.com> Add missing "try ... finally" safeguards

Safeguards for code protected by ReentrantReadWriteLock.

Bug: 28734075
Bug: 28799467
Change-Id: Ib7f598a92e8df6bd855ca48cdd094c1c73a935f2
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
eb50a39e98acb78d16465041bb5c172aa1637e97 23-May-2016 Pavlin Radoslavov <pavlin@google.com> Reduced the impact of "synchronized" statements

* Removed "synchronized" statements that are not needed
* Replaced "synchronized" statements with Read/Write lock as
appropriate. The lock protects the access to and the setting of
BluetoothAdapter.mService and BluetoothManagerService.mBluetooth and
associated state.

Bug: 28734075
Bug: 28799467
Change-Id: I8f8281c505f0a1ae0add1e14a3caba1f5b2a98e4
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
090bf551308e68b1b2a996c959b608cabd025c5c 21-Apr-2016 Sanket Agarwal <sanketa@google.com> While turning OFF do not honor ON requests.

Native stack does not handle being put from OFF -> ON state without
doing a complete cleanup. Hence instead of going from start -> ON -> OFF
-> cleanup it goes start -> ON -> OFF ->ON -> ... usually leads to race
conditions down the road in native.

This patch is a workaround so that we can throw away the requests if we
are in currently "turning off" phase. The side-effect would be that user
will need to turn it ON again. The race happens when the turn OFF time
is longer but usually it is found to be close to order of seconds hence
the wait should be bounded.

Bug: b/28318203
Change-Id: I14f6633f31311e5b561e1dcbc8a9d6d2a5dd6fdc
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
4bb4830b758ce0fadff33d993c4e7e8aca880cad 31-Mar-2016 Ajay Panicker <apanicke@google.com> Get name and address without enabling Bluetooth

Bug: 27665077
Change-Id: I2a06c1a65f22b2f9095a859f5bdd39d4626da165
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
bf796d87777e998cc284b8634e9cfdcd371e63f8 11-Mar-2016 Ajay Panicker <apanicke@google.com> Get adapter name and address on boot

Bug: 25836009
Change-Id: I6fe68b116fcd736cd5736be68c97af3052351b33
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
aacb89e929e4b36327df46c07a5afb6bd8e68479 05-Mar-2016 Jeff Sharkey <jsharkey@android.com> Kick Bluetooth stack after user is unlocked.

If Bluetooth was enabled at boot time, but the actual Bluetooth
package wasn't encryption aware, we need to kick off another enabled
pass once the user is unlocked.

Bug: 27326711
Change-Id: I511c4fd8567792e5bc4d49fa95929fd87edd0fbf
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
67609c75702df7178e2df6d9afa1b61c00cb2a43 05-Mar-2016 Jeff Sharkey <jsharkey@android.com> Bluetooth should use Slog.

It's in the system process, so whatever it has to say is probably
important enough to stick around.

Change-Id: Iaeca99d6b9c4881c53ab89216b5128e345a5ff0f
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
6e8fafff7731e6a2c13342eebc9b5078b7d5021f 23-Feb-2016 Pavlin Radoslavov <pavlin@google.com> Suppress output for Protobuf data if Bluetooth is disabled

If Bluetooth is disabled or there is some other error,
don't print anything when extracting the Metrics-related data
in Protobuf format.

[Cherry-pick from AOSP]

Bug: 27315491
Change-Id: Ic1ec5334fbf0b524909400f080e2eac3ec34edf4
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
b9db74906f608a5005f6b6c350a30650d064ca8f 17-Feb-2016 Andre Eisenbach <eisenbach@google.com> Restore DUMP permission check for BluetoothManagerService

Bug: 27150536
Change-Id: I6e07f8f5f7476c6cd6dca79e2fb5e8c8412493ec
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
9db28ebea5e435ae6eb016358f5109e718d9aecc 13-Jan-2016 Marie Janssen <jamuraa@google.com> IBluetooth: remove dump(), support arguments

Because IBluetooth is a Binder service, we don't need dump() to
support dumpsys, just call the IBinder.dump().

Change-Id: Idcd48f758427b824e0b7eaafd091ba3fb2ff8993
(cherry picked from commit adbb3ff062e039b2552c6b5ded92e56346ac3934)
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
c5967e9862489024c932b0c7fcb84ed0af2a7fd7 08-Jan-2016 Jeff Sharkey <jsharkey@android.com> More progress on triaging PackageManager callers.

Catch a bunch of simple cases where the PackageManager flags are
obvious. Add the ability to use the MATCH_SYSTEM_ONLY flag on
PackageInfo and ApplicationInfo queries.

Re-examine recent tasks after a user is unlocked, since some of the
activities may now be available and runnable.

Bug: 26471205, 26253870
Change-Id: I989d9f8409070e5cae13202b47e2c7de85bf4a5b
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e06b4d1d9f718b9fe02980fea794a36831a16db2 06-Jan-2016 Jeff Sharkey <jsharkey@android.com> Consistent naming for PackageManager methods.

When hidden PackageManager methods take a userId argument, they
should be named explicitly with the "AsUser" suffix. This fixes
several lagging examples so that we can pave the way to safely
start passing flags to new methods without scary overloading.

Also fix spacing issues in various logging statements.

Change-Id: I1e42f7f66427410275df713bea04f6e0445fba28
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
305fdabfd0638a306c9366d79620d23e335cc0e0 12-Nov-2015 Andre Eisenbach <eisenbach@google.com> Move Bluetooth startup to PHASE_ACTIVITY_MANAGER_READY

For some reason BluetoothManagerService recently has been unable to bind
to the BluetoothService, causing timeouts, which in turn could lead to
Bluetooth not working immediately after boot.

While refactoring that code, the "get name and address" code was also
removed to make the startup sequence more transparent and easier to
debug.

Bug: 25597150
Change-Id: I62ffe4589a76ea8a6db75e3c7599f149db677ea3
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
7c69636c9a406265e1da368f3edfd8fb9651132c 16-Sep-2015 Xiaohui Chen <xiaohuic@google.com> Cleanup USER_OWNER in various services

Bug: 19913735
Change-Id: I980370bab18e1b9ccf4043eed2b9fd721a940f72
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
acddf2b34965da479efe46bd87871234ac6a5aab 04-Sep-2015 Joe LaPenna <jlapenna@google.com> Do not wtf when the systemui is not present.

Not all devices, like wearables actually have a system ui.

BUG: 23822226

Change-Id: Ibc2d6c3b8db1de668b9cbced3efcec5a7a39f20b
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
29b8c4ab8ac4942e46a9ad4ced795bf06b9f8481 04-Aug-2015 Pavlin Radoslavov <pavlin@google.com> Reset the pointer to the Bluetooth GATT service

During error recovery, if the mBluetooth pointer is reset to null,
reset the mBluetoothGatt pointer as well.

Bug: 21756298
Change-Id: I26204ba47dd3c5465bb7de30cfa5dc0f07eee2fd
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
3bf1ac54edc77d2249dc9a0ab8291efa70ff76b9 30-Jul-2015 Andre Eisenbach <eisenbach@google.com> Bluetooth: Don't call beginBroadcast() while in a broadcast

Block duplicate calls to beginBroadcast() and add try/finally
to ensure finishBroadcast() is always called.

Bug: 22800686
Change-Id: Ie8d4005f4cd50dd2544a2832773d72eab0015d92
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
658bf2fa6d3bb1121c3c96abb62ca01d3abe95db 27-Jun-2015 Miao Chou <mcchou@google.com> Add BluetoothService to reduce resuming time after reboot

As a subclass of SystemService, BluetoothService wraps around
BluetoothManagerService to unlock Auto-enabling Bluetooth earlier by overriding
onBootPhase() and removes the need to wait for BOOT_COMPLETED message.

Bug:21705209
Change-Id: I2acc41370a750d8416e11e662e06392326741d2c
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e7908c7ff25e96b938271f7595f7da31cd77ae19 24-Jun-2015 Sharvil Nanavati <sharvil@google.com> resolved conflicts for merge of 64a4858b to mnc-dev

Change-Id: I9340b816232285853740c03d5e9898fdd019ff0e
64a4858b3231985b341c57551f79fa83a3a0d329 23-Jun-2015 Sharvil Nanavati <sharvil@google.com> resolved conflicts for merge of 7c250056 to lmp-mr1-ub-dev

Change-Id: I8ec2e76756e61a6e6bbe85ca699facbde1c1fbc7
7c2500564b8a79c001c455928b56d45b967bae4b 20-Jun-2015 Sharvil Nanavati <sharvil@google.com> Dump bonded Bluetooth devices in dumpsys.

Change-Id: Ie509b0abc64cbc7813e9fe844ff4c05d8cb05f9d
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
b5a479c1f08c8ea41a1523695bc482c79ed4ea54 21-Jun-2015 Pavlin Radoslavov <pavlin@google.com> Fetch the Bluetooth name and address without enabling the whole stack

After factory reset and first bootup, fetching the Bluetooth device
name and address is now done without explicitly enabling/disabling
the whole Bluetooth stack.
Apparently, enabling/disabling the whole stack during th first bootup
was somehow holding the kernel wakelock without releasing it.

Also, disable debug log messages for class BluetoothManagerService.

Bug: 21949364
Change-Id: Iffc14f7969d05c1456159d1f4246c53fb5df0f7a
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
512fb0ca900128cb682491a7f85e20c17edd8481 18-Jun-2015 Pavlin Radoslavov <pavlin@google.com> Sync the Bluetooth name and address from the Bluetooth Adapter

It looks like the synchronization of the Bluetooth name and address
from the Bluetooth Adapter has been removed by the following commit
without an explanation:

Bluetooth LE background operation mode (2/2)

As a result, the BluetoothManagerService.mAddress was always null.

Bug: 20545952
Change-Id: I595f370e06e17b2c67ce511f793efdee7674598c
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e4a744b626085e3669dba0cd40c0adcab7979d14 12-Jun-2015 Wei Wang <weiwa@google.com> Stops BLE scan when scan only mode is disabled.

Bug: 21791070
Change-Id: I1137190f01fb3790b7dfbc409429414da44abe58
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
11f83882f2a4448b5a2bbbb9e23b700096ed7536 08-May-2015 Nitin Arora <niarora@codeaurora.org> Bluetooth: Clear BLE always ON apps at Airplane mode

This patch clears the container managing the Ble Always On
apps while switching on, the airplane mode. The airplane mode
will completely turn Off the Bleutooth Adapter from any state
it is in.

Change-Id: Ib28d39d85efe3aac37e3a53a4fb892099568c702
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
408abf7f1bec3253675d0225300d7ee39481d286 13-May-2015 Svet Ganov <svetoslavganov@google.com> Do not report WiFi and Bluetooth MAC addresses - framework.

As a part of the new runtime permissions work we are limiting
the PII apps can access. BT and WiFi MAC addresses are PII and
based on our research there is no valid use case for app dev
to get these addresses aside of user tracking which we are
trying to limit.

bug:21078858

Change-Id: Ib48223b272c0fd4f5c36acc889d4f44df204b309
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
14dcb5f13852619e68a22446ee37510191718c3a 05-Dec-2014 Andre Eisenbach <eisenbach@google.com> Bluetooth native dumpsys logging support (3/5)

Bug: 18508263
Change-Id: I88f9c90dab8b0c825010c8617709449a3dd704b2
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
bdfaa7f566a0fbe59dfc6bc14cd9d4d92b9259fa 29-Apr-2015 Nitin Arora <niarora@codeaurora.org> Bluetooth: Ensure Bluetooth interface handle is valid

This change adds null checks to Bluetooth interface handle to prevent
using null references when BluetoothService is not up. Also removed
the callbacks for the intermediate state removed for now as they are
not being used.

Change-Id: I0e72ff4da467a8bcf5a4e5ac48d8558e7f308c7e
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
67d8416b8eb092dbf960c92cd6a2b2564d212d79 27-Apr-2015 Wei Wang <weiwa@google.com> Honor Ble scanning settings from Settings UI.

Bug:20643039

Change-Id: Ib1465108e26b8537c9da1bfbb31a99d2e33da910
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
5c0d6f61ab8d75bf55a33aa65c36fde1b3b4469d 24-Apr-2015 Etan Cohen <etancohen@google.com> Merge commit '6ddbb5e' into merge2
d055adbe2c1c65d9346e65209fa8790190bc239e 03-Mar-2015 Nitin Arora <niarora@codeaurora.org> Bluetooth LE background operation mode (2/2)

Changes include new framework APIs to enable and disable Bluetooth LE
separately from Bluetooth Classic. Along with handling the new states
in the Bluetooth manager service.

Change-Id: Idf667981f48fcbcb6dfda1aa77ea8bab1b2361f0
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
6ddbb5e55f72e870899731ff12af9945fa970e6e 03-Mar-2015 Nitin Arora <niarora@codeaurora.org> Bluetooth LE background operation mode (2/2)

Changes include new framework APIs to enable and disable Bluetooth LE
separately from Bluetooth Classic. Along with handling the new states
in the Bluetooth manager service.

Change-Id: Idf667981f48fcbcb6dfda1aa77ea8bab1b2361f0
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
a0eaaa2a22def29a0c3cb9645a105b773048f5ee 05-Dec-2014 Andre Eisenbach <eisenbach@google.com> DO NOT MERGE ANYWHERE Bluetooth native dumpsys logging support (3/4)

Bug: 18508263
Change-Id: I88f9c90dab8b0c825010c8617709449a3dd704b2
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
75b52bb880e7b5380a27583ef65c4ea5222f9f44 18-Dec-2014 Mike Lockwood <lockwood@google.com> BluetoothManagerService: Enforce DUMP permission

Bug: 18667272
Change-Id: If9a510aa7b5f22b9df1d8b33f0a18183040a8cf6
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
5b614593e1a212e8ad9ac4a1e22a2954bb499233 09-Dec-2014 Benjamin Franz <bfranz@google.com> Only add successfully bound profile services to mProfileServices.

This causes crashes on all devices that disable the BluetoothHeadset
service when disabling bluetooth and thereby trying to unbind all
services.

Bug: 18669882
Change-Id: I48978a1556ead967c848c5bd9f6e001d38754b8d
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
e8b98925d08f720c4d22b626d0650de536840a9a 12-Nov-2014 Benjamin Franz <bfranz@google.com> Change the routing path of bluetooth headset connections.

The HeadsetService is now bound directly by the BluetoothManagerService.
The IBinder object related to the HeadsetService is then given back to
the BluetoothHeadset and to the client app. This change makes the
HeadsetService available for managed profile clients.

Bug: 16968338
Change-Id: I016d1837e4f987c0fab1fc2c64cb06eb91b24d87
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
726d4de780dea9afded2e44a010b793f7ac29c23 28-Oct-2014 Mike Lockwood <lockwood@google.com> Add dumpsys support for bluetooth

Bug: 18159457
Change-Id: I8d3f7084a7b089c111fd622ff526630bfdfa7300
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
ce09f5a53c8408d995c116a4430c000574d9875a 11-Oct-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17829949: Don't kill Bluetooth service...

...even in extreme low memory condition

Bind to Bluetooth with BIND_IMPORTANT, so that it is allowed to
go to a higher oom adj level.

Fix some problems when this is done from a system or persistent
process, where this would go to a level that is *too* high. Instead,
introduce a new oom adj level for it that is right below persistent.

Change-Id: I002bcc4accc36c8579c4cda161be7d2fba21ba17
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
bd9a9a53ed09ca355eb0911d2aeee526b964aa7b 18-Aug-2014 Adrian Roos <roosa@google.com> Allow SystemUI to control Bluetooth for secondary users

Bug: 15818610
Change-Id: I9eaeaffc73f7675957ed3cd6a896ea83a79d6cff
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
bc8169b0553e7bcdc061ebdbf586da432983b2fb 16-Jun-2014 Natalie Silvanovich <natashenka@google.com> Merge "Null checks in register/unregister BT Adapters"
d83a096f299abd9c7fe5e441ef1bb169c314b575 03-May-2014 Dianne Hackborn <hackbod@google.com> Bump up priority of system receiving BOOT_COMPLETED.

Change-Id: I5166f88f11f781914312e867cb653c8ecbefa705
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
55db646c4e43fd24386bf522aef13c0b3075593c 02-May-2014 Natalie Silvanovich <natashenka@google.com> Null checks in register/unregister BT Adapters

Prevents system crash

Bug: 13743852
Change-Id: I05bcb31fc8377866b93899a01c004d15e041f21f
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
8a985d24ce9a38f40ed88fecbdcd0e75e3a68f44 25-Feb-2014 John Spurlock <jspurlock@google.com> Tabs -> spaces in frameworks/base.

Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java
9158825f9c41869689d6b1786d7c7aa8bdd524ce 22-Nov-2013 Amith Yamasani <yamasani@google.com> Move some system services to separate directories

Refactored the directory structure so that services can be optionally
excluded. This is step 1. Will be followed by another change that makes
it possible to remove services from the build.

Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
/frameworks/base/services/core/java/com/android/server/BluetoothManagerService.java