Исключение EOF WebSocketListener

Я пытаюсь получить ответ массива байтов аудио от WebSocketApi, отправив его через Okhttp3-(WebSocketListener). Но я получаю EOFException в onFailure() WebSocketListener при отправке аудио байтового массива.

Мой код:

// Установление соединения с WS api

        client = new OkHttpClient();            
        listener = new EchoWebSocketListener();
        request = new Request.Builder().url("ws://AUDIO_PROCESSING_URL").build();
        ws = client.newWebSocket(request, listener);
        client.dispatcher().executorService().shutdown();

// Отправка байтового массива аудио в WS API

 @Override
    public void onOpen(WebSocket webSocket, Response response) {            
        String bytes = ByteString.of(AudioData).toString();      
        webSocket.send(bytes);
    }

//ОШИБКА

    : onFailure: java.io.EOFException
    : onFailure t.getMessage(): null

Пожалуйста, помогите мне узнать это.

Заранее спасибо.

1 ответ

Решение

Попытайтесь закрыть соединение после отправки данных, а не выключать клиент.

public void onOpen(WebSocket webSocket, Response response) {            
    String bytes = ByteString.of(AudioData).toString();      
    webSocket.send(bytes);
    webSocket.close(1000, null); // close ws connection
}
Другие вопросы по тегам