使用guava和weberknecht将inputStream转换为字符串并连接到websocket [请参阅this帖子]。 Weberknecht把我扔了出去,所以我试着用一个非常简单的Socket-Connection从服务器上得到任何答案。问题是,我无法读取inputStream。我不知道为什么。
注意: 在Iphone上,Websocket-Server可以工作。 [我知道“websocket / = socket”......我只是在这里试图从服务器获得任何答案]
我的代码:
try {
Socket sock = new Socket("62.212.88.234", 15000);
OutputStream out = sock.getOutputStream();
InputStream in = sock.getInputStream();
Log.e("SKT", "Reading input [! PROBLEM HERE !]");
String string = CharStreams.toString(new InputStreamReader(in,
"UTF-8"));
Log.e("SKT", "Answer [! NEVER REACHED !]:" + string);
sock.close();
} catch (UnknownHostException e) {
Log.e("SKT", "UnknownHostException: " + e.getMessage());
} catch (IOException e) {
Log.e("SKT", "IOException: " + e.getMessage());
}
提前感谢您的帮助。
答案 0 :(得分:1)
CharStreams.toString
的{{3}}说:
将Readable对象中的所有字符读入String。
我的猜测是远程端没有关闭套接字,因此没有消耗流的末尾,因此冻结。