Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何设置AndroidSync WebSocket的超时?_Java_Android_Websocket_Androidasync Koush - Fatal编程技术网

Java 如何设置AndroidSync WebSocket的超时?

Java 如何设置AndroidSync WebSocket的超时?,java,android,websocket,androidasync-koush,Java,Android,Websocket,Androidasync Koush,我正在尝试更改默认的AndroidSync websocket初始连接超时30秒。这是具有默认超时的工作版本: AsyncHttpClient.getDefaultInstance().websocket(connectionURI.toString(), null, this); 我想更改超时时间。这就是我期望的工作: int timeout_ms = 20000; AsyncHttpGet request = new AsyncHttpGet(connectionURI.toString(

我正在尝试更改默认的AndroidSync websocket初始连接超时30秒。这是具有默认超时的工作版本:

AsyncHttpClient.getDefaultInstance().websocket(connectionURI.toString(), null, this);
我想更改超时时间。这就是我期望的工作:

int timeout_ms = 20000;
AsyncHttpGet request = new AsyncHttpGet(connectionURI.toString());
request.setTimeout(timeout_ms);
AsyncHttpClient.getDefaultInstance().websocket(request, null, this);
这将导致java.lang.IllegalArgumentException:invalid uri=ws://exampleserver.com:80/test middleware=[com.koushikdutta.async.http。HttpTransportMiddleware@1e2543c8,com.koushikdutta.async.http.spdy。SpdyMiddleware@2534fc61,com.koushikdutta.async.http。AsyncSocketMiddleware@107b3386]

请注意,完全相同的connectionURI字符串在第一种情况下是成功的,但在第二种情况下不是成功的


有没有办法更改AndroidSync websocket的超时时间?

这似乎是Koush未解决的问题
这个黑客帮了我的忙。你需要通过http或htpps协议

    AsyncHttpGet request = new AsyncHttpGet("ws://xxx.xxx.x.xx:8500".replace("ws://", "http://").replace("wss://", "https://"));
    request.setTimeout(3000);

    AsyncHttpClient asyncHttpClient = AsyncHttpClient.getDefaultInstance();
    asyncHttpClient.websocket(request, null, webSocketConnectCallback);

此问题与超时问题的关系如何?