浅聊一下,我也还在摸索中,欢迎各位大佬指教吖~~
咳咳,首先让我们来附上官方地址:https://web.sdk.qcloud.com/im/doc/zh-cn//SDK.html
然后开始使用
1、要先安装需要的sdk
安装方法:npm i 需要的sdk --save
app:tim-wx-sdk,cos-wx-sdk-v5,aegis-weex-sdk
小程序:tim-wx-sdk,cos-wx-sdk-v5,aegis-mp-sdk
H5:tim-js-sdk,tim-upload-plugin,aegis-web-sdk
然后把需要的文件放到相应的位置,像我这里就是1v1单聊的一些文件,
pages里面的话我觉得这两个算是需要的,其他的看个人情况吧
2、创建sdk实例
此处我是直接cv官网实例里面的
// im 聊天配置
const SDKAppID = genTestUserSig('').sdkAppID;
uni.$aegis.reportEvent({
name: 'onLaunch',
ext1: 'onLaunch-success',
ext2: 'uniTuikitExternal',
ext3: `${SDKAppID}`,
})
uni.setStorageSync(`TIM_${SDKAppID}_isTUIKit`, true);
// 重点注意: 为了 uni-app 更好地接入使用 tim,快速定位和解决问题,请勿修改 uni.$TUIKit 命名。
// 如果您已经接入 tim ,请将 uni.tim 修改为 uni.$TUIKit。
uni.$TUIKit = TIM.create({
SDKAppID:
});
// #ifndef H5
uni.$TUIKit.registerPlugin({
'cos-wx-sdk': COS
});
// #endif
// #ifdef H5
uni.$TUIKit.registerPlugin({ 'tim-upload-plugin':TIMUploadPlugin })
// #endif
// 将原生插件挂载在 uni 上
// #ifdef APP-PLUS
uni.$TUICalling = TUICalling;
// #endif
// 如果您已创建了 tim,请将 tim 实例挂载在 wx 上,且不可以修改 wx.$TIM(修改变量可能导致 TUICalling 组件无法正常使用), 完成 TUICalling 初始化,
// 如果您没有创建,可以不传
// #ifdef MP-WEIXIN
wx.$TIM = uni.$TUIKit;
// #endif
uni.$TUIKitTIM = TIM;
uni.$TUIKitEvent = TIM.EVENT;
uni.$TUIKitVersion = TIM.VERSION;
uni.$TUIKitTypes = TIM.TYPES; // 监听系统级事件
uni.$resetLoginData = this.resetLoginData();
uni.$TUIKit.on(uni.$TUIKitEvent.SDK_READY, this.onSDKReady);
uni.$TUIKit.on(uni.$TUIKitEvent.SDK_NOT_READY, this.onSdkNotReady);
uni.$TUIKit.on(uni.$TUIKitEvent.KICKED_OUT, this.onKickedOut);
uni.$TUIKit.on(uni.$TUIKitEvent.ERROR, this.onTIMError);
uni.$TUIKit.on(uni.$TUIKitEvent.NET_STATE_CHANGE, this.onNetStateChange);
uni.$TUIKit.on(uni.$TUIKitEvent.SDK_RELOAD, this.onSDKReload);
3、登录
uni.$TUIKit.login({
userID,
userSig,
}).then((res) => {
console.log(res.data);
uni.$aegis.reportEvent({
name: 'login',
ext1: 'login-success',
ext2: 'uniTuikitExternal',
ext3: `${SDKAppID}`,
})
}).catch((error) => {
uni.$aegis.reportEvent({
name: 'login',
ext1: `login-failed#error:${error}`,
ext2: 'uniTuikitExternal',
ext3: `${SDKAppID}`,
})
})
4、如果有需要更新用户资料的话
可以在登录后调用updateMyProfile方法
uni.$TUIKit.updateMyProfile({
nick: ,
avatar: ,
}).then((res) => {
}).catch((error) => {
})
5、聊天的时候只需要把对方的userid带过去就可以啦,参数叫做conversationID