b/2320107 Fixed NPE for class bits. Docks do not have class bits.
Change-Id: Ibe4f697a906010f8f3ee270b891db286a4976f8a
This commit is contained in:
@@ -326,7 +326,10 @@ public class BluetoothSettings extends PreferenceActivity
|
|||||||
if (uuids != null)
|
if (uuids != null)
|
||||||
if (BluetoothUuid.containsAnyUuid(uuids,
|
if (BluetoothUuid.containsAnyUuid(uuids,
|
||||||
LocalBluetoothProfileManager.OPP_PROFILE_UUIDS)) return true;
|
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;
|
break;
|
||||||
case BluetoothDevicePicker.FILTER_TYPE_AUDIO:
|
case BluetoothDevicePicker.FILTER_TYPE_AUDIO:
|
||||||
if (uuids != null) {
|
if (uuids != null) {
|
||||||
@@ -335,7 +338,7 @@ public class BluetoothSettings extends PreferenceActivity
|
|||||||
|
|
||||||
if (BluetoothUuid.containsAnyUuid(uuids,
|
if (BluetoothUuid.containsAnyUuid(uuids,
|
||||||
LocalBluetoothProfileManager.HEADSET_PROFILE_UUIDS)) return true;
|
LocalBluetoothProfileManager.HEADSET_PROFILE_UUIDS)) return true;
|
||||||
} else {
|
} else if (bluetoothClass != null) {
|
||||||
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP)) return true;
|
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP)) return true;
|
||||||
|
|
||||||
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET)) return true;
|
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET)) return true;
|
||||||
|
@@ -691,26 +691,28 @@ public class CachedBluetoothDevice implements Comparable<CachedBluetoothDevice>
|
|||||||
boolean printUuids = true;
|
boolean printUuids = true;
|
||||||
BluetoothClass bluetoothClass = mDevice.getBluetoothClass();
|
BluetoothClass bluetoothClass = mDevice.getBluetoothClass();
|
||||||
|
|
||||||
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET) !=
|
if (bluetoothClass != null) {
|
||||||
mProfiles.contains(Profile.HEADSET)) {
|
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_HEADSET) !=
|
||||||
Log.v(TAG, "headset classbits != uuid");
|
mProfiles.contains(Profile.HEADSET)) {
|
||||||
printUuids = true;
|
Log.v(TAG, "headset classbits != uuid");
|
||||||
}
|
printUuids = true;
|
||||||
|
}
|
||||||
|
|
||||||
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP) !=
|
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_A2DP) !=
|
||||||
mProfiles.contains(Profile.A2DP)) {
|
mProfiles.contains(Profile.A2DP)) {
|
||||||
Log.v(TAG, "a2dp classbits != uuid");
|
Log.v(TAG, "a2dp classbits != uuid");
|
||||||
printUuids = true;
|
printUuids = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP) !=
|
if (bluetoothClass.doesClassMatch(BluetoothClass.PROFILE_OPP) !=
|
||||||
mProfiles.contains(Profile.OPP)) {
|
mProfiles.contains(Profile.OPP)) {
|
||||||
Log.v(TAG, "opp classbits != uuid");
|
Log.v(TAG, "opp classbits != uuid");
|
||||||
printUuids = true;
|
printUuids = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (printUuids) {
|
if (printUuids) {
|
||||||
Log.v(TAG, "Class: " + bluetoothClass.toString());
|
if (bluetoothClass != null) Log.v(TAG, "Class: " + bluetoothClass.toString());
|
||||||
Log.v(TAG, "UUID:");
|
Log.v(TAG, "UUID:");
|
||||||
for (int i = 0; i < uuids.length; i++) {
|
for (int i = 0; i < uuids.length; i++) {
|
||||||
Log.v(TAG, " " + uuids[i]);
|
Log.v(TAG, " " + uuids[i]);
|
||||||
|
Reference in New Issue
Block a user