首页 > 技术文章 > 小程序后台隐藏后 socket 无法重新连接

NorthHarbor 2020-04-17 11:43 原文

小程序后台隐藏后 socket 无法重新连接

  • 连接时 fail 回调函数的事件参数:connectSocket:fail:jsapi has no permission,event=createSocketTask,runningState=suspend,permissionMsg=permission ok,detail=network api interrupted in suspend state
  • 错误原因:小程序后台切换前台时,需要时间,这个错误表示连接时小程序还不是处于前台状态,无法连接
  • 解决办法:在 fail 回调函数中使用递归 进行不断重新连接,直到成功
  • 注意:,递归时,应该设置时间差
fail: function (e) {
    console.log('connect fail', e)
    setTimeout(() => {
        reconnect()  // 重连函数
    }, 300)
}

推荐阅读