Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.5.1, 5.7.1, 5.8.0 RC
-
None
Description
My application uses QBluetoothDeviceDiscoveryAgent and then QBluetoothServiceDiscoveryAgent to discover device and service.
As soon as the desired service is retrieved a QBluetoothSocket is connected to it using RfcommProtocol in order to transfer data.
This works fine on Android 4.1.
But it is broken on Android 5.0.
On Android 4.1 one service is retrieved and then only my own data is written to the device.
On Android 5.0 a second service is retrieved with a service UUID which is null. I'm ignoring this one.
The socket connection gets established and handshaking begins to work. I'm able to read some data from the device. But then in a phase where my application waits for some user input and the device is in a waiting state as well something breaks my connection. The device suddenly shows a connection error and the socket throws an error signal "Error while reading".
I'm not able to stop the QBluetoothServiceDiscoveryAgent because of another known bug (it crashed if I try). Therefore I assume this agent tries to connect to my device which this device doesn't expect after the connection already is established. But this is only a guess,