diff --git a/src/com/android/settings/bluetooth/BluetoothSettings.java b/src/com/android/settings/bluetooth/BluetoothSettings.java index 8a8e0642b4f..4f3205b540c 100644 --- a/src/com/android/settings/bluetooth/BluetoothSettings.java +++ b/src/com/android/settings/bluetooth/BluetoothSettings.java @@ -332,7 +332,10 @@ public class BluetoothSettings extends PreferenceActivity if (uuids != null) if (BluetoothUuid.containsAnyUuid(uuids, LocalBluetoothProfileManager.OPP_PROFILE_UUIDS)) return true; - if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP)) return true; + if (bluetoothClass != null + && bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP)) { + return true; + } break; case BluetoothDevicePicker.FILTER_TYPE_AUDIO: if (uuids != null) { @@ -341,7 +344,7 @@ public class BluetoothSettings extends PreferenceActivity if (BluetoothUuid.containsAnyUuid(uuids, LocalBluetoothProfileManager.HEADSET_PROFILE_UUIDS)) return true; - } else { + } else if (bluetoothClass != null) { if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP)) return true; if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET)) return true; diff --git a/src/com/android/settings/bluetooth/CachedBluetoothDevice.java b/src/com/android/settings/bluetooth/CachedBluetoothDevice.java index bb21bd709dc..ec8df3c808d 100644 --- a/src/com/android/settings/bluetooth/CachedBluetoothDevice.java +++ b/src/com/android/settings/bluetooth/CachedBluetoothDevice.java @@ -691,26 +691,28 @@ public class CachedBluetoothDevice implements Comparable boolean printUuids = true; BluetoothClass bluetoothClass = mDevice.getBluetoothClass(); - if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET) != - mProfiles.contains(Profile.HEADSET)) { - Log.v(TAG, "headset classbits != uuid"); - printUuids = true; - } + if (bluetoothClass != null) { + if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET) != + mProfiles.contains(Profile.HEADSET)) { + Log.v(TAG, "headset classbits != uuid"); + printUuids = true; + } - if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP) != - mProfiles.contains(Profile.A2DP)) { - Log.v(TAG, "a2dp classbits != uuid"); - printUuids = true; - } + if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP) != + mProfiles.contains(Profile.A2DP)) { + Log.v(TAG, "a2dp classbits != uuid"); + printUuids = true; + } - if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP) != - mProfiles.contains(Profile.OPP)) { - Log.v(TAG, "opp classbits != uuid"); - printUuids = true; + if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP) != + mProfiles.contains(Profile.OPP)) { + Log.v(TAG, "opp classbits != uuid"); + printUuids = true; + } } if (printUuids) { - Log.v(TAG, "Class: " + bluetoothClass.toString()); + if (bluetoothClass != null) Log.v(TAG, "Class: " + bluetoothClass.toString()); Log.v(TAG, "UUID:"); for (int i = 0; i < uuids.length; i++) { Log.v(TAG, " " + uuids[i]);