初始化UDP链接。
UDP链接运行过程如果有错误信息会通过 UtsUdpClientCallback#onErrorStr 反馈给调用客户端
TCP服务器配置
可选
callbackObj: UtsUdpClientCallback回调函数
可选
resultCallback: (errMsg: UtsErrorMessage) => void创建链接结果回调函数
函数没有返回任何值
// 初始化单播UDP
unicastUdpClient.initUdpSocket(
// 配置
{
dataType: "text", // 接收的数据格式,支持:text-文本,hex-十六进制字符串,byte-二进制byte数组
broadcastType: "unicast", // 支持:unicast-单播,multicast-组播,broadcast-广播
destAddress: "192.168.50.130",
destPort: 30101
},
// 回调
{
// 接受消息,如果不需要接收消息可以去掉
onReceivedData(session, message) {
log("【单播-客户端】链接接收到消息:", session, message)
},
// 错误消息
onErrorStr(errorMsg) {
log("错误消息:", errorMsg)
},
},
(errMsg : UtsErrorMessage) => {
log("创建UDP链路回调结果:", errMsg)
}
)
// 初始化广播UDP
broadcastUdpClient.initUdpSocket(
// 配置
{
dataType: "text", // 接收的数据格式,支持:text-文本,hex-十六进制字符串,byte-二进制byte数组
broadcastType: "broadcast", // 支持:unicast-单播,multicast-组播,broadcast-广播
destAddress: "192.168.50.255",
destPort: 30101
},
// 回调
{
// 接受消息,如果不需要接收消息可以去掉
onReceivedData(session, message) {
log("【广播-客户端】链接接收到消息:", session, message)
},
// 错误消息
onErrorStr(errorMsg) {
log("错误消息:", errorMsg)
},
},
(errMsg : UtsErrorMessage) => {
log("创建UDP链路回调结果:", errMsg)
}
)
// 初始化组播UDP
multicastUdpClient.initUdpSocket(
// 配置
{
dataType: "text", // 接收的数据格式,支持:text-文本,hex-十六进制字符串,byte-二进制byte数组
broadcastType: "multicast", // 支持:unicast-单播,multicast-组播,broadcast-广播
destAddress: "239.192.1.10",
destPort: 30101
},
// 回调
{
// 接受消息,如果不需要接收消息可以去掉
onReceivedData(session, message) {
log("【组播-客户端】链接接收到消息:", session, message)
},
// 错误消息
onErrorStr(errorMsg) {
log("错误消息:", errorMsg)
},
},
(errMsg : UtsErrorMessage) => {
log("创建UDP链路回调结果:", errMsg)
}
)
发送消息
消息
可选
resultCallback: (errMsg: UtsErrorMessage) => void发送结果回调函数,成功或者失败
// 发送文本消息
unicastUdpClient.sendUdpMessage({
dataType: "text",
data: "hello, world"
},(errMsg : UtsErrorMessage) => {
log("发送消息回调结果:", errMsg)
})
关闭UDP链接
UDP链接是否运行中
true-运行中,false-未运行
UDP客户端链接 封装的UDP Socket相关操作,包括:创建UDP链接、销毁UDP链接,发送消息,接收消息等能力。
作者
tickstep
Version
1.0.0
添加于
1.0.0
Usage
UDP客户端,用于发送消息给到服务端,并接收服务端回复的消息。 不同系统平台有些不一样的地方,需要开发者注意并做好适配。
单播
安卓、苹果、鸿蒙三大平台基本一致,没有明显差异。
广播
255.255.255.255
需要先到苹果开发者网申请 com.apple.developer.networking.multicast 的 .entitlements 广播权限,否则广播无效果。 参考 苹果官网申请权限链接 获取更多信息苹果iOS使用组播需要到苹果开发者网申请 com.apple.developer.networking.multicast 的 .entitlements 组播权限,否则组播无效果。 参考 苹果官网申请权限链接 获取更多信息
示例
示例
示例