收藏
回答

TCPSocket.onMessage断开连接,再重连后.onMessage消息重复?

用户主动断开后,再重连,onMessage消息重复出现

//TCP连接 按键
 connectSocketFunciton() {
  
  var that = this
  var address = that.globalData.inputIP
    var port=that.globalData.inputPort
    console.log(address,port)
  tcp.connect({
    address:address,
    port:port,
   timeout:3,   
  })
  tcp.onError((e)=>{
    console.log(e)
    let iszhuangtai=false
    that.callzt(iszhuangtai)
    wx.showToast({
      title"连接失败",
      icon'none',
      duration2000,//持续的时间
  })
  })
  //TCP监听
   tcp.onMessage((e)=>{
    var util=require('pages/utils/util.js')
    var that = this
    var time= util.formatDate(new Date());
    // console.log(e.message)
    var jieshou= e.remoteInfo
    var buffer = e.message;
    var dataview = new DataView(buffer);
    var ints = new Uint8Array(buffer.byteLength);
    var str = '',ceshi='';
    for (var i = 0; i < ints.length; i++) {
            str+= String.fromCharCode(dataview.getUint8(i));
    }    
    console.log("直接接受的消息,未处理",e)
    console.log(str ,jieshou)
    var shuju="@["+jieshou.address+"]-" +time+':\n'+ str
    this.globalData.message=shuju
   // if (this.onMessage) this.onMessage(shuju);
    
    that.callback(shuju)
    return str


})


},
//断开连接
tcpcloce(res){
  var that =this
  tcp.close()
  //this.onMessage =null
 // tcp.onMessage = null;
  that.globalData.iszhuangtai = false
  wx.showToast({
    title"连接断开",
    icon'none',
    duration2000,//持续的时间
})


},



回答关注问题邀请回答
收藏

1 个回答

  • RedHood
    RedHood
    2023-06-25

    问题已复现,我们会在后续版本中进行修复。

    2023-06-25
    有用 2
    回复 3
    • H。
      H。
      2023-08-09
      请问v2.33.0这个问题解决了吗?
      2023-08-09
      回复
    • RedHood
      RedHood
      2023-08-09回复H。
      这里修复的是工具模拟器的问题,最新版的工具已修复。
      2023-08-09
      回复
    • 乘简
      乘简
      2023-10-09
      华为手机鸿蒙4.0连esp8266的wifi,能正常获取到ip如192.168.4.3,但此时连192.168.4.1:8899的tcp端口连不通,tcp.bindWifi也失败,安卓 与 苹果手机无此问题,请问怎么解决?(华为手机为双卡双待,连上这个wifi后,微信还能收到信息的)
      2023-10-09
      回复
登录 后发表内容