Android套接字客户端readUTF不起作用

维特·沃尔特

我是Java套接字编程的新手,我正在Android客户端和PC端的Java服务器之间进行基本的套接字通信。服务器可以从客户端接收消息,但是客户端似乎无法从服务器读取消息。我一直想知道为什么会这样。

服务器:

while(true){
   try {
    socket = serverSocket.accept();

    dataInputStream = new DataInputStream(socket.getInputStream());
    System.out.println("ip: " + socket.getInetAddress());
    System.out.println("message: " + dataInputStream.readUTF());

    dataOutputStream = new DataOutputStream(socket.getOutputStream());
    dataOutputStream.writeUTF("Hello Client !!!!!!" + "\n");
   } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
...
...

   if (socket != null){
    try{
        socket.close();
        socket = null;
    }
    catch(Exception e){
        e.printStackTrace();
    }
}
}

客户:

socket = new Socket(serverIP, 8080);
dataOutputStream = new DataOutputStream(socket.getOutputStream());
dataOutputStream.writeUTF(textOut.getText().toString());

dataInputStream = new DataInputStream(socket.getInputStream());
runOnUiThread(new Runnable() {
    @Override
    public void run() {
        try {
            Log.i(TAG, dataInputStream.readUTF());
            textIn.setText(dataInputStream.readUTF());
        } 
        catch (Exception e) {
            e.printStackTrace();
        }
    }
    });

在服务器端,一切正常,但Android客户端无法接收数据。readUTF不返回任何内容(还可以在logcat中返回W / System.err)

解决方案:

我终于通过将dataInputStream.readUTF()从runOnUIThread部分移出来解决了这个问题。例如。将其存储在runOnUiThread之前的临时字符串中。我想这应该是菜鸟的错误。

连续调用readUTF()绝对足够愚蠢。

用户名

Android客户端无法接收数据

您的客户端尝试读取两条消息,但只发送了一条。

服务器也永远不会关闭连接。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

TCP客户端套接字在api19上不起作用

来自分类Dev

为什么此Java套接字客户端不起作用?

来自分类Dev

TCP客户端在Android上不起作用

来自分类Dev

OrderByChild()在Android客户端中不起作用

来自分类Dev

Android中的多线程服务器套接字,可从连接的客户端接收图像-不起作用

来自分类Dev

客户端排序不起作用

来自分类Dev

Web套接字连接从Android客户端失败

来自分类Dev

Android聊天客户端:套接字连接

来自分类Dev

(Java / Android)客户端套接字抛出IOException

来自分类Dev

Android中仅客户端编程的套接字

来自分类Dev

TCP客户端在android服务中读写套接字

来自分类Dev

Powershell SSL套接字客户端

来自分类Dev

套接字客户端如何setSoTimeout

来自分类Dev

套接字客户端连接

来自分类Dev

Winsock客户端套接字无效

来自分类Dev

套接字中的Java客户端

来自分类Dev

Python tcp套接字客户端

来自分类Dev

C ++客户端/套接字问题

来自分类Dev

异步客户端Java套接字

来自分类Dev

Winsock客户端套接字无效

来自分类Dev

套接字客户端返回变量

来自分类Dev

套接字客户端永远阻塞

来自分类Dev

多个套接字客户端

来自分类Dev

客户端套接字连接被拒绝

来自分类Dev

Marklogic Java客户端API标准不起作用

来自分类Dev

客户端分页在智能表中不起作用

来自分类Dev

MongoDB Java客户端的WriteConcern不起作用

来自分类Dev

umbraco轮廓客户端验证不起作用

来自分类Dev

bittorrent客户端:ttorrent不起作用