更新记录
1.0.0(2026-08-04)
- 首发 Android TCP 客户端与 UDP(单连接 / 单绑定)
- 支持文本 / 十六进制收发、断线与错误回调
- 定价:普通授权 ¥19.90 / 源码授权 ¥99.00
平台兼容性
uni-app
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
| √ |
- |
- |
- |
- |
- |
5.0 |
× |
× |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| - |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
uni-app x
| Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
| - |
- |
5.0 |
× |
× |
- |
Thor-tcp-udp
Thor 安卓原生 TCP / UDP Socket(第一版仅 Android)。
弥补 uni-app 仅有 WebSocket、缺少裸 TCP/UDP 的缺口。适合 IoT、打印机、工控、自定义协议等场景。
功能
- TCP 客户端:连接 / 发送文本或 hex / 收消息 / 关闭(当前单连接)
- UDP:绑定本地端口 / 发送 / 收消息 / 关闭(当前单绑定)
- IO 线程收发,回调切回主线程
- 返回
id,关闭/发送时按 id 校验
TCP 用法
import { tcpConnect, tcpSend, tcpClose } from '@/uni_modules/Thor-tcp-udp'
let tcpId = ''
tcpConnect({
host: 'tcpbin.com',
port: 4242,
timeout: 10000,
success(res) {
tcpId = res.id
},
fail(err) {
console.log(err)
},
onMessage(msg) {
console.log('recv', msg.text, msg.hex)
},
onClose(e) {
console.log('close', e.reason)
},
onError(e) {
console.log('error', e.errMsg)
}
})
tcpSend({ id: tcpId, text: 'hello\n' })
// 或 tcpSend({ id: tcpId, hex: '68656c6c6f0a' })
tcpClose({ id: tcpId })
UDP 用法
import { udpBind, udpSend, udpClose } from '@/uni_modules/Thor-tcp-udp'
let udpId = ''
udpBind({
port: 0, // 0 = 系统分配
success(res) {
udpId = res.id
console.log('localPort', res.localPort)
},
onMessage(msg) {
console.log(msg.remoteHost, msg.remotePort, msg.text)
}
})
udpSend({
id: udpId,
host: '192.168.1.100',
port: 9000,
text: 'ping'
})
udpClose({ id: udpId })
错误码
| errCode |
含义 |
| 1001 |
参数无效 |
| 1002 |
连接/绑定失败 |
| 1003 |
id 不存在 |
| 1004 |
发送失败 |
| 1005 |
已关闭 |
| 1099 |
其它 |
| 9001 |
平台不支持(预留) |
平台
- Android:已实现(minSdk 21)
- iOS / 鸿蒙:未实现
注意
- 需要重新制作 自定义调试基座(含网络权限 / cleartext)。
- 公网明文 TCP 测试可用
tcpbin.com:4242(echo)。
- 本插件首版为单 TCP + 单 UDP(同时只能各维持一条),够用再扩展多连接。
- 本插件不做 TLS;如需加密请自行在业务层处理或后续版本扩展。
售价
- 普通授权版:¥19.90
- 源码授权版:¥99.00