Merge "While turning OFF do not honor ON requests."
This commit is contained in:
@@ -208,7 +208,7 @@ public final class LocalBluetoothAdapter {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setBluetoothEnabled(boolean enabled) {
|
public boolean setBluetoothEnabled(boolean enabled) {
|
||||||
boolean success = enabled
|
boolean success = enabled
|
||||||
? mAdapter.enable()
|
? mAdapter.enable()
|
||||||
: mAdapter.disable();
|
: mAdapter.disable();
|
||||||
@@ -225,6 +225,7 @@ public final class LocalBluetoothAdapter {
|
|||||||
|
|
||||||
syncBluetoothState();
|
syncBluetoothState();
|
||||||
}
|
}
|
||||||
|
return success;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BluetoothDevice getRemoteDevice(String address) {
|
public BluetoothDevice getRemoteDevice(String address) {
|
||||||
|
|||||||
@@ -649,7 +649,20 @@ class BluetoothManagerService extends IBluetoothManager.Stub {
|
|||||||
"Need BLUETOOTH ADMIN permission");
|
"Need BLUETOOTH ADMIN permission");
|
||||||
if (DBG) {
|
if (DBG) {
|
||||||
Log.d(TAG,"enable(): mBluetooth =" + mBluetooth +
|
Log.d(TAG,"enable(): mBluetooth =" + mBluetooth +
|
||||||
" mBinding = " + mBinding);
|
" mBinding = " + mBinding + " mState = " + mState);
|
||||||
|
}
|
||||||
|
// We do not honor ON requests when the adapter is already turned ON or in the process of
|
||||||
|
// turning ON.
|
||||||
|
// As a protective mechanism to make sure that the native stack gets cleaned up properly
|
||||||
|
// before turning it back ON we ignore requests while the bluetooth is turning OFF.
|
||||||
|
// Bug: b/28318203
|
||||||
|
if (mState == BluetoothAdapter.STATE_BLE_TURNING_OFF ||
|
||||||
|
mState == BluetoothAdapter.STATE_TURNING_OFF ||
|
||||||
|
mState == BluetoothAdapter.STATE_ON ||
|
||||||
|
mState == BluetoothAdapter.STATE_BLE_ON ||
|
||||||
|
mState == BluetoothAdapter.STATE_TURNING_ON ||
|
||||||
|
mState == BluetoothAdapter.STATE_BLE_TURNING_ON) {
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized(mReceiver) {
|
synchronized(mReceiver) {
|
||||||
|
|||||||
Reference in New Issue
Block a user