Add error handle for device that not support Bluetooth

- Add LocalBluetoothManager null check for device that
  not support Bluetooth
- Add test to verify when LocalBluetoothManager is null
  will not crash

Bug: 110712414
Test: make -j42 RunSettingsRoboTests
Change-Id: Ib506a0206cfcfdfec60bdfcf9a1944338a7ab729
This commit is contained in:
hughchen
2018-06-25 11:06:45 +08:00
parent a5f68f9c3c
commit 34066fa21a
6 changed files with 81 additions and 3 deletions

View File

@@ -50,9 +50,10 @@ public class DiscoverableFooterPreferenceController extends BasePreferenceContro
@VisibleForTesting
BroadcastReceiver mBluetoothChangedReceiver;
@VisibleForTesting
LocalBluetoothManager mLocalManager;
private FooterPreferenceMixin mFooterPreferenceMixin;
private FooterPreference mPreference;
private LocalBluetoothManager mLocalManager;
private LocalBluetoothAdapter mLocalAdapter;
private AlwaysDiscoverable mAlwaysDiscoverable;
@@ -113,6 +114,9 @@ public class DiscoverableFooterPreferenceController extends BasePreferenceContro
@Override
public void onResume() {
if (mLocalManager == null) {
return;
}
mContext.registerReceiver(mBluetoothChangedReceiver,
new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));
mAlwaysDiscoverable.start();
@@ -121,6 +125,9 @@ public class DiscoverableFooterPreferenceController extends BasePreferenceContro
@Override
public void onPause() {
if (mLocalManager == null) {
return;
}
mContext.unregisterReceiver(mBluetoothChangedReceiver);
mAlwaysDiscoverable.stop();
}