以下是一个使用 OkHttp 进行 Socket 连接并发送数据给服务器的示例代码:

import okhttp3.*
import java.io.IOException

fun main() {
    val client = OkHttpClient()
    val request = Request.Builder()
        .url('http://your-server-url')
        .build()

    client.newCall(request).enqueue(object : Callback {
        override fun onResponse(call: Call, response: Response) {
            val socket = response.body?.source()?.inputStream()?.use { inputStream ->
                // 创建一个 Socket 连接
                Socket('your-server-ip', 8080).apply {
                    // 获取 Socket 的输出流
                    val outputStream = getOutputStream()

                    // 发送数据给服务器
                    val data = 'Hello, Server!'.toByteArray()
                    outputStream.write(data)
                    outputStream.flush()

                    // 读取服务器的响应数据
                    val buffer = ByteArray(4096)
                    val bytesRead = inputStream.read(buffer)
                    val response = String(buffer, 0, bytesRead)
                    println('Server response: $response')

                    // 关闭 Socket 连接
                    close()
                }
            }
        }

        override fun onFailure(call: Call, e: IOException) {
            e.printStackTrace()
        }
    })
}

请确保将 your-server-url 替换为您的服务器 URL,将 your-server-ip 替换为您的服务器 IP 地址,以及根据您的实际需求更改端口号和发送的数据。

Android Kotlin 使用 OkHttp Socket 连接服务器并发送数据

原文地址: https://www.cveoy.top/t/topic/qeMV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录