Я использую SignalR 3.1.3 в своем проекте:
implementation 'com.microsoft.signalr:signalr:3.1.3'
Он запускается в службе с использованием AsyncTask:
internal class HubConnectionTask() : AsyncTask<HubConnection?, Unit?, String>() {
override fun doInBackground(vararg hubConnections: HubConnection?): String? {
val hubConnection = hubConnections[0]
hubConnection?.start()?.blockingAwait()
return hubConnection?.connectionId
}
override fun onPostExecute(connectionId: String) {
super.onPostExecute(connectionId)
Log.e("SignalR", connectionId)
}
}
Все работает нормально, кроме случаев, когда я хочу остановить соединение по методу onDestroy
моей службы:
override fun onDestroy() {
super.onDestroy()
Log.i("SignalRService", "onDestroy")
if (hubConnection.connectionState == HubConnectionState.CONNECTED) {
hubConnection.stop()
}
}
Он не перестанет получать сообщения!
что я сделал не так?