diff --git a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java index 7e100438a4e..e245c22eb96 100644 --- a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java +++ b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java @@ -92,7 +92,8 @@ public class AdvancedBluetoothDetailsHeaderController extends BasePreferenceCont public int getAvailabilityStatus() { final boolean advancedEnabled = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_SETTINGS_UI, SettingsUIDeviceConfig.BT_ADVANCED_HEADER_ENABLED, true); - final boolean untetheredHeadset = BluetoothUtils.getBooleanMetaData( + final boolean untetheredHeadset = mCachedDevice != null + && BluetoothUtils.getBooleanMetaData( mCachedDevice.getDevice(), BluetoothDevice.METADATA_IS_UNTETHERED_HEADSET); return advancedEnabled && untetheredHeadset ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; } diff --git a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java index c31b13ecb0f..59c5078dbce 100644 --- a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java +++ b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java @@ -23,6 +23,7 @@ import android.bluetooth.BluetoothDevice; import android.content.Context; import android.os.Bundle; import android.provider.DeviceConfig; +import android.util.Log; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -107,12 +108,13 @@ public class BluetoothDeviceDetailsFragment extends RestrictedDashboardFragment mDeviceAddress = getArguments().getString(KEY_DEVICE_ADDRESS); mManager = getLocalBluetoothManager(context); mCachedDevice = getCachedDevice(mDeviceAddress); + super.onAttach(context); if (mCachedDevice == null) { // Close this page if device is null with invalid device mac address + Log.w(TAG, "onAttach() CachedDevice is null!"); finish(); return; } - super.onAttach(context); use(AdvancedBluetoothDetailsHeaderController.class).init(mCachedDevice); final BluetoothFeatureProvider featureProvider = FeatureFactory.getFactory(