收藏
回答

使用官方websocketAPI在部分安卓手机上无法连接

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug websocket 工具 7.0.4 2.7.0

问题描述:

使用官方websocketAPI后,在ios手机上运行没有问题,但是在部分安卓手机上websocket无法连接。


部分机型:

在OPPO和vivo机型上尤为严重,包括: vivo y55 安卓6.0.1,以及华为荣耀6X 安卓8.0.0.

还包括魅族、华为手机使用的是安卓5.0.1 安卓5.1.0


现象描述:

wx.connectSocket({

    url: url,

    method: 'GET',

    success: function () {

        console.log("连接成功...")

    },

    fail: function () {

        console.log("连接失败...")

    }

})

在后台检测查看后发现,连接后走了“连接成功”,但是过了大约60秒后,提示:连接超时。没有走到

wx.onSocketOpen()中。



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

2 个回答

  • 小程序/小游戏开发-Link
    小程序/小游戏开发-Link
    2019-06-17

    就这个 case 而言,是因为证书链不完整导致。具体可看 https://myssl.com/szghlc.com?status=q&port=5001 ,对比之下,这个域名默认端口的证书链是完整的 https://myssl.com/szghlc.com?status=q 。至于只有在 Android 有这个问题,原因未明。


    另外一方面有个 bug 是没有回调证书错误,而是等到 60s 后回调超时,会跟最近版本修复。


    2019-06-17
    有用 1
    回复
  • 社区技术运营专员-小柿子
    社区技术运营专员-小柿子
    2019-06-10

    麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2019-06-10
    有用 1
    回复 10
    • {-。-}
      {-。-}
      2019-06-10

      代码片段就是根据官网文档写的,微信版本是最新的7.0.4。手机的话问题比较多的是vivo和oppo只做了这方便的统计,安卓系统是5 6 7都会有相关的问题出现。

      2019-06-10
      1
      回复
    • {-。-}
      {-。-}
      2019-06-10

      https://developers.weixin.qq.com/s/jUu5Q1m77497    代码片段链接

      2019-06-10
      回复
    • {-。-}
      {-。-}
      2019-06-13

      我用js的方式写了一个socket链接,地址和小程序上的链接地址一样。然后测试手机去访问后,可以连接和传输数据都是正常的,然后东西用小程序真机调试则是不行。

      2019-06-13
      回复
    • 社区技术运营专员-小柿子
      社区技术运营专员-小柿子
      2019-06-13回复{-。-}

      测试了下,没发复现,这边先看下

      2019-06-13
      回复
    • {-。-}
      {-。-}
      2019-06-13回复社区技术运营专员-小柿子

      嗯。方法的话。使用那个片段的代码,小程序运行,然后真机调试,建议使用5.0的安卓系统的手机调试(oppo和vivo是重灾区),然后在控制台即可打印看到。状态有:正在连接... 、websocket连接已打开和超时后的信息。后台已经看到连接上去了,但是小程序这边还是返回超时。


      2019-06-13
      回复
    查看更多(5)
登录 后发表内容