更新记录
1.0.1(2025-06-27)
- 增加harmony支持
1.0.0(2025-04-21)
udp广播(包含客服端和服务端),支持Android和iOS
平台兼容性
uni-app
Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
√ |
√ |
- |
- |
- |
- |
4.4 |
12 |
√ |
微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
快应用-华为 |
快应用-联盟 |
× |
× |
× |
× |
× |
× |
- |
× |
× |
× |
× |
uni-app x
Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
- |
- |
5.0 |
12 |
√ |
× |
udp广播,包含客户端和服务端,支持Android和iOS
集成步骤:
- 拷贝demo里的Info.plist、nativeResources文件夹到项目根目录下
- iOS打包的provisioining profile文件需要开通组播权限,参考https://www.jianshu.com/p/c2f6e6aa41a3?v=1682211826634
- 参考https://www.cnblogs.com/wenrisheng/p/18323027集成本插件到项目里
接口
import {
UTSUdpServer,
UTSUdpClient
} from "@/uni_modules/wrs-uts-udp"
// 服务端如果有多个端口需要监听,请使用多个变量,每个变量监听一个端口
let server = new UTSUdpServer()
// let server1 = new UTSUdpServer()
// let server2 = new UTSUdpServer()
let client = new UTSUdpClient()
客户端
client.onCallback((resp) => {
this.showMsg(JSON.stringify(resp))
let opt = resp.opt
switch (opt) {
case "sendSuc": {
this.showMsg("发送成功:" + resp.id)
}
break;
case "sendFail": {
this.showMsg("发送失败:" + resp.id)
}
break;
default:
break;
}
})
let params = {}
params.ip = this.ip // 服务端IP,如果ip是255.255.255.255表示广播
params.port = parseInt(this.port) // 服务端端口
// data是十六进制数据,如果需要进制转换、ASCII、modbus、crc等,请使用插件https://ext.dcloud.net.cn/plugin?id=19206
params.data = [0x00, 0xFF] // data可以是十六进制的数组
params.id = 123121 // 可选参数,发送指令ID,整形,可自定义
client.send(params)
服务端
let params = {}
params.port = parseInt(this.port) // 监听端口
params.cacheSize = 1024 // cacheSize目前仅支持Android
let result = server.start(params)
if (result.flag) {
this.showMsg("启动成功")
} else {
this.showMsg("启动失败:" + JSON.stringify(result))
}
server.stop()