udp socket无法发送数据
发布于 7 年前 作者 yanshao 10031 次浏览 来自 官方Issues

如下代码可以创建UDP socket,但是无法发出数据,真机调试和预览都发不了。发送端手机为iPhone6和OPPO A57,接收端为笔记本电脑。已确定两端都连接同一个WIFI热点并在同一个局域网内,而且用其他手机工具APP可以从手机端成功发送UDP数据到接收端。试了几个基础库都不行。(2.7.1   2.7.7)

const udp = wx.createUDPSocket()

//udp.bind()

if (udp === null) {

console.log(‘暂不支持’)

return;

} else {

wx.showToast({

title: “” + udp,

icon: ‘success’,

duration: 2000

})

}

udp.send({

address: ‘192.168.125.4’,

port: 8848,

message: ‘hello, how are you’

})

4 回复

麻烦指导一下,多谢了

我遇到了同样的问题。微信版本7.0.10。基础库是2.10.0。使用的代码就是范例中的2句话。

1,

const udp = wx.createUDPSocket()

这句在开发工具和真机调试都不会报错。但是返回的结果不同。真机调试时返回的结果如下:

可能正是因为在真机中默默地返回了一个非正常的socket,导致下面一句bind报错了。

2,udp.bind()

这句代码,在开发工具中可通过,并且后续发送消息正常。在真机调试时过不了,报上图的错误。

手机试了3款都一样,iphone6,三星note,华为。也没有其他信息可以调试,实在是没招了。

我的直觉,是wx.createUDPSocket()内部的处理有问题,但是我没有证据。希望微信开发团队和路过的大侠能救助一下,指一条明路。

模拟器基础库版本是2.8.0的能正常发送消息,真机调试不行报错,难道是移动设备基础库版本太低的原因吗?求解

先确认下有没有收到任何错误事件

回到顶部