2017-10-24 10 views
0

WebSocketApiからオーディオバイト配列の応答をOkhttp3-(WebSocketListener)を介して送信しようとしています。 しかし、オーディオバイト配列の送信中にWebSocketListenerのonFailure()でEOFExceptionが発生しています。WebSocketListener EOF例外

マイコード:

// 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); 
    } 

// ERROR

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

私を助けてくださいそれを見つけるために。

ありがとうございます。

+0

なぜクライアントを作成したらすぐにシャットダウンしていますか? –

+0

私は一度だけデータを送信しようとしています。 – Anila

答えて

0

クライアントをシャットダウンする代わりにデータを送信した後に接続を閉じるようにしてください。

public void onOpen(WebSocket webSocket, Response response) {    
    String bytes = ByteString.of(AudioData).toString();  
    webSocket.send(bytes); 
    webSocket.close(1000, null); // close ws connection 
} 
関連する問題