更新记录

1.0.0(2026-03-27)

  • 初始化项目结构
  • 实现基础能力

平台兼容性

uni-app(4.87)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - 5.0 10
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

uni-app x(4.87)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - 5.0 10 -

📡 XLTcpSocket - uni-app x TCP通信库

一个基于 UTS 开发的高性能 TCP 通信库,专为 uni-app x 打造,适用于IoT设备、局域网通信等场景。


✨ 特性

  • 🚀 基于 UTS,性能接近原生
  • 🔌 简单易用的 TCP API 封装
  • 📦 支持 stringUint8Array 数据发送
  • 🔄 完整连接生命周期管理(连接 / 断开 / 失败)
  • 📡 实时数据接收回调
  • 🧩 支持多设备并发连接

📦 安装

uni_modules/xl-socket

或通过插件市场导入


🚀 快速开始

1️⃣ 创建连接

import { XLTcpScoket } from "@/uni_modules/xl-socket"

const tcp = new XLTcpScoket({
  host: "192.168.1.100",
  port: 9100
})

2️⃣ 监听数据

tcp.onMessage((data) => {
  console.log("收到数据:", data)
})

3️⃣ 建立连接

tcp.connect((state, error) => {
  console.log("连接状态:", state)

  if (state === "failed") {
    console.error("连接失败:", error?.message)
  }
})

4️⃣ 发送数据

// 发送字符串
tcp.send("hello")

// 发送字节
const buffer = new Uint8Array([72, 105])
tcp.send(buffer)

5️⃣ 关闭连接

tcp.close()

📖 API 文档

🔹 TcpAddress

type TcpAddress = {
  host: string   // IP或域名
  port: number   // 端口号
}

🔹 TcpConnectionState

type TcpConnectionState =
  | "connected"
  | "failed"
  | "disconnected"

🔹 XLTcpScoket

构造函数

new XLTcpScoket(address: TcpAddress)

onMessage

监听服务器返回数据

tcp.onMessage((data: number[]) => {})

connect

建立连接

tcp.connect((state, error?) => {})

send

发送数据

tcp.send(string | Uint8Array)

close

关闭连接

tcp.close()

🧠 使用建议

✅ 1. 避免地址引用问题

// ❌ 不推荐
new XLTcpScoket(address)

// ✅ 推荐
new XLTcpScoket({ ...address })

✅ 2. 多设备连接

const tcp1 = new XLTcpScoket({ host: "192.168.1.101", port: 9100 })
const tcp2 = new XLTcpScoket({ host: "192.168.1.102", port: 9100 })

⚠️ 注意事项

  • ❗ 必须在设备与手机/电脑同一局域网
  • ❗ IP 和端口必须正确
  • ❗ 建议在发送前判断 isConnected
  • ❗ 连接失败时请检查防火墙或设备状态

🔥 适用场景

  • 📟 工业设备通信
  • 🧠 IoT 智能硬件
  • 📡 局域网调试工具

👨‍💻 作者

如有问题欢迎进入交流群交流 🚀

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率: