注销登录与销毁实例
更新时间: 2024/03/14 19:21:16
开发者需要自己管理好已建立长连接的 NIM 实例,不使用可以将其断开或者销毁。
功能介绍
一般情况下,如果您的应用生命周期跟 NIM 实例生命周期一致,用户在退出应用前可以不登出,直接退出即可。
但某些特殊场景,例如用户仅在进入特定界面后才调用 NIM 实例的能力,退出界面后不再调用,此时需要调用 NIM 实例的登出接口注销 IM 登录。 登出后,用户将不再接收 IM 的消息。
实现方法
注销登录
调用nim.disconnect方法手动断开 NIM 实例与云信服务端的长连接,即注销 IM 登录。
销毁实例
调用nim.destroy方法销毁 NIM 实例。
示例代码
js// 创建实例
const nim = NIMSDK.getInstance({
appkey: 'YOUR_APPKEY',
account: 'YOUR_ACCID',
token: 'YOUR_TOKEN',
debugLevel: 'debug',
});
await nim.connect()
// 断开
await nim.disconnect()
setTimeout(function() {
// 断开后仍旧可以 connect 成功
await nim.connect()
// 销毁后就无法再次 connect 建立长连接,需要再次 new 一个实例。
await nim.destroy()
}, 5000)
注意事项
-
调用
nim.disconnect方法手动断开长连接后还可以调用nim.connect方法恢复长连接。而调用nim.destroy销毁实例后,长连接无法恢复,只能重新创建 NIM 实例。 -
uni-app 限制了只能建立一条客户端与服务端的长连接,因此建议在手动断开长连接后尽可能将之前的实例销毁,保证只有一个实例在建立长连接。
相关文档
此文档是否对你有帮助?






