Bluetooth MIDI: Don't open device automatically
In Android T, we experimented with opening Bluetooth devices without the
need for a separate app for pairing. We did not end up shipping the
feature and we ended up commenting out this code.
However, we missed one line in BluetoothMidiService. When a Bluetooth
MIDI device is discovered, onServicesDiscovered() calls the same apis as
real apps, openBluetoothDevice(). If both apps and BluetoothMidiService
tries to open the same Bluetooth device, a myriad of race conditions
occur.
The fix here is to remove the extra openBluetoothDevice() call.
See ag/16644383 and ag/18088048 for the CLs that added and removed the
Bluetooth MIDI pairing feature.
Bug: 246507339
Test: Repeatedly connect and disconnect Yamaha UD-BT01 with BLE+MIDI app
Test: Repeatedly connect and disconnect Yamaha MD-BT01 with BLE+MIDI app
Merged-In: I45d6090c3c55a597d6db01fbc30e135f241a11c7
Change-Id: I45d6090c3c55a597d6db01fbc30e135f241a11c7
(cherry picked from commit 2303aff052)
This commit is contained in:
@@ -138,8 +138,6 @@ public final class BluetoothMidiDevice {
|
||||
// switch to receiving notifications
|
||||
mBluetoothGatt.readCharacteristic(characteristic);
|
||||
}
|
||||
|
||||
openBluetoothDevice(mBluetoothDevice);
|
||||
}
|
||||
} else {
|
||||
Log.e(TAG, "onServicesDiscovered received: " + status);
|
||||
|
||||
Reference in New Issue
Block a user