Merge "Shutdown: Continue shutdown with BLE only mode" into oc-mr1-dev
am: 23c0668a3f
Change-Id: Ib9ae218442f87cd3b09520e8c106b95ec2d2a947
This commit is contained in:
@@ -571,7 +571,7 @@ public final class ShutdownThread extends Thread {
|
||||
Thread t = new Thread() {
|
||||
public void run() {
|
||||
boolean nfcOff;
|
||||
boolean bluetoothOff;
|
||||
boolean bluetoothReadyForShutdown;
|
||||
boolean radioOff;
|
||||
|
||||
final INfcAdapter nfc =
|
||||
@@ -595,15 +595,15 @@ public final class ShutdownThread extends Thread {
|
||||
}
|
||||
|
||||
try {
|
||||
bluetoothOff = bluetooth == null ||
|
||||
bluetoothReadyForShutdown = bluetooth == null ||
|
||||
bluetooth.getState() == BluetoothAdapter.STATE_OFF;
|
||||
if (!bluetoothOff) {
|
||||
if (!bluetoothReadyForShutdown) {
|
||||
Log.w(TAG, "Disabling Bluetooth...");
|
||||
bluetooth.disable(mContext.getPackageName(), false); // disable but don't persist new state
|
||||
}
|
||||
} catch (RemoteException ex) {
|
||||
Log.e(TAG, "RemoteException during bluetooth shutdown", ex);
|
||||
bluetoothOff = true;
|
||||
bluetoothReadyForShutdown = true;
|
||||
}
|
||||
|
||||
try {
|
||||
@@ -628,14 +628,19 @@ public final class ShutdownThread extends Thread {
|
||||
sInstance.setRebootProgress(status, null);
|
||||
}
|
||||
|
||||
if (!bluetoothOff) {
|
||||
if (!bluetoothReadyForShutdown) {
|
||||
try {
|
||||
bluetoothOff = bluetooth.getState() == BluetoothAdapter.STATE_OFF;
|
||||
// BLE only mode can happen when BT is turned off
|
||||
// We will continue shutting down in such case
|
||||
bluetoothReadyForShutdown =
|
||||
bluetooth.getState() == BluetoothAdapter.STATE_OFF ||
|
||||
bluetooth.getState() == BluetoothAdapter.STATE_BLE_TURNING_OFF ||
|
||||
bluetooth.getState() == BluetoothAdapter.STATE_BLE_ON;
|
||||
} catch (RemoteException ex) {
|
||||
Log.e(TAG, "RemoteException during bluetooth shutdown", ex);
|
||||
bluetoothOff = true;
|
||||
bluetoothReadyForShutdown = true;
|
||||
}
|
||||
if (bluetoothOff) {
|
||||
if (bluetoothReadyForShutdown) {
|
||||
Log.i(TAG, "Bluetooth turned off.");
|
||||
}
|
||||
}
|
||||
@@ -662,7 +667,7 @@ public final class ShutdownThread extends Thread {
|
||||
}
|
||||
}
|
||||
|
||||
if (radioOff && bluetoothOff && nfcOff) {
|
||||
if (radioOff && bluetoothReadyForShutdown && nfcOff) {
|
||||
Log.i(TAG, "NFC, Radio and Bluetooth shutdown complete.");
|
||||
done[0] = true;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user