1***@qq.com
1***@qq.com
  • 发布:2019-10-30 17:18
  • 更新:2020-11-10 00:11
  • 阅读:1102

极光im执行loginout问题

分类:uni-app

Android有谁遇到过极光im执行loginout之后,再执行init会失败的问题吗
目前知道的问题是:执行loginout后,根本没有监听到下面onSocketClose这个事件
在微信小程序和ios下正常,且也能监听到下面这个事件

loginout() {  
        this.jim.loginOut()  
        uni.onSocketClose(()=>{  
            console.log('socket关闭');  
        })  
    }

发了帖子总是没人回答,是我的提问方式不对吗

2019-10-30 17:18 负责人:无 分享
已邀请:
落水的死鱼

落水的死鱼

请问下再执行init会失败的问题解决了嘛

  • 1***@qq.com (作者)

    解决了。在im源码里面搜索this.ws.closeSocket(),判断是Android的加个setTimout就行了

    if (uni.getSystemInfoSync().platform == "android") {

    "undefined" != typeof this.ws && setTimeout(()=>{

    this.ws.closeSocket()

    },0)

    }else{

    "undefined" != typeof this.ws && this.ws.closeSocket()

    }

    2019-11-26 19:42

  • 落水的死鱼

    回复 1***@qq.com: 我做了判断和延时执行,退出登录后再执行init还是一直无法成功,network那边一直在尝试请求未成功

    2019-11-27 16:45

  • 1***@qq.com (作者)

    回复 落水的死鱼: init之前需要确保im已连接,用isConnect判断。可能是这个问题

    2019-11-27 19:04

8***@qq.com

8***@qq.com

为啥我的还是不行啊 你用的sdk 版本是多少啊 好坑啊 这个东西 搞了我一天 大神 可以指点一下么?

该问题目前已经被锁定, 无法添加新回复