【问题标题】:How to send multiple messages using one socket in android(java,kotlin)如何在android(java,kotlin)中使用一个套接字发送多条消息
【发布时间】:2021-09-24 19:57:22
【问题描述】:

我正在尝试制作一个向我的服务器发送消息并接收响应并每秒更新我的应用程序的应用程序。问题是每次我必须创建一个新套接字并发送消息然后关闭速度很慢的套接字。我想知道是否有一种方法可以制作一个套接字并发送我的消息,当我完成后关闭套接字。这就是我的函数的工作原理。

public suspend fun dataexchange1(address: String, port: Int, message: String): String? {

    val socket = Socket(address, port)

    val Input = BufferedReader(InputStreamReader(socket!!.getInputStream()))
    val output = DataOutputStream(socktst!!.getOutputStream())
  

    output!!.write(message.toByteArray())

    var response= Input.readLine()
 
    Input.close()
    socket!!.close()
    return response.toString()
}

【问题讨论】:

  • 不要关闭流 - 不知道你是如何设置它的,但通常你会有 2 个线程,一个用于输出,一个用于输入。关闭任何一个流都会关闭套接字 ..?

标签: android kotlin


【解决方案1】:

您可能必须创建一个循环,在每次发送消息时清空缓冲区,然后重新发送新消息。

【讨论】:

    猜你喜欢
    • 2020-03-07
    • 2013-10-18
    • 1970-01-01
    • 1970-01-01
    • 2013-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-02
    相关资源
    最近更新 更多