[Settings] Fix crashes caused by null bluetooth adapter and ethernet
manager
Emulator system image doesn't support bluetooth and ethernet manager
yet.
BUG: 150408099
Signed-off-by: Weilun Du <wdu@google.com>
Change-Id: Iab4f7b962f01755fe7d84956f9b54374f1e17408
(cherry picked from commit 08e95d0db0)
This commit is contained in:
@@ -172,7 +172,7 @@ public class TetherSettings extends RestrictedSettingsFragment
|
||||
com.android.internal.R.string.config_ethernet_iface_regex);
|
||||
|
||||
final boolean usbAvailable = mUsbRegexs.length != 0;
|
||||
final boolean bluetoothAvailable = mBluetoothRegexs.length != 0;
|
||||
final boolean bluetoothAvailable = adapter != null && mBluetoothRegexs.length != 0;
|
||||
final boolean ethernetAvailable = !TextUtils.isEmpty(mEthernetRegex);
|
||||
|
||||
if (!usbAvailable || Utils.isMonkeyRunning()) {
|
||||
@@ -326,7 +326,8 @@ public class TetherSettings extends RestrictedSettingsFragment
|
||||
if (intent != null) mTetherChangeReceiver.onReceive(activity, intent);
|
||||
|
||||
mEthernetListener = new EthernetListener();
|
||||
mEm.addListener(mEthernetListener);
|
||||
if (mEm != null)
|
||||
mEm.addListener(mEthernetListener);
|
||||
|
||||
updateState();
|
||||
}
|
||||
@@ -340,7 +341,8 @@ public class TetherSettings extends RestrictedSettingsFragment
|
||||
}
|
||||
getActivity().unregisterReceiver(mTetherChangeReceiver);
|
||||
mTm.unregisterTetheringEventCallback(mTetheringEventCallback);
|
||||
mEm.removeListener(mEthernetListener);
|
||||
if (mEm != null)
|
||||
mEm.removeListener(mEthernetListener);
|
||||
mTetherChangeReceiver = null;
|
||||
mStartTetheringCallback = null;
|
||||
mTetheringEventCallback = null;
|
||||
@@ -438,7 +440,7 @@ public class TetherSettings extends RestrictedSettingsFragment
|
||||
if (isTethered) {
|
||||
mEthernetTether.setEnabled(!mDataSaverEnabled);
|
||||
mEthernetTether.setChecked(true);
|
||||
} else if (isAvailable || mEm.isAvailable()) {
|
||||
} else if (isAvailable || (mEm != null && mEm.isAvailable())) {
|
||||
mEthernetTether.setEnabled(!mDataSaverEnabled);
|
||||
mEthernetTether.setChecked(false);
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user