前言
因为项目中用到了腾讯云通信,网上云通信IM的文章很少,所以我打算详细写一下,希望对大家有所帮助。
什么是云通信IM
云通信 IM(Instant Messaging)承载亿级 QQ 用户即时通讯技术,数十年技术积累,腾讯云为您提供超乎寻常即时通讯聊天服务。针对开发者的不同阶段需求及不同场景,云通信 IM 提供了一系列解决方案,包括: Android/iOS/Windows/Web 的 SDK 组件、服务端集成接口、第三方回调接口等,利用这些组件,可以在应用中构建自己的即时通讯产品,解决开发者面临的高并发、高可用性的一系列问题。
首先我们要知道云通信IM登录流程,直接看下面图:
不难看懂,说的简单一点就是我们调后台接口去获取Identifier 与UserSig。
我们在测试阶段可以 获取测试 userSig,这点在下面会讲到。
集成
一.配置
1.创建应用
2.配置应用-管理员
3.获取UserSig
完成账号管理员配置后,单击下载公私钥的链接,即可获得一个名为 keys.zip 的压缩包。解压后可以得到两个文件,即 public_key 和 private_key,用记事本打开 private_key 文件,并将其中的内容拷贝到开发辅助工具的私钥文本输入框中。其中:identifier 即为您的测试账号(也就是 userId),私钥为 private_key 文件里的文本内容,生成的签名就是userSig。identifier 和 userSig 是一一对应的关系。
具体操作可以看下面网址:
https://cloud.tencent.com/document/product/269/32678
Android-demo下载地址:
https://github.com/tencentyun/TIMSDK/tree/master/Android
二.集成SDK
在项目中添加 IM SDK 的依赖
dependencies {
api 'com.tencent.imsdk:imsdk:版本号'
}
版本号最好用当前最新的版本,我用的是4.3.118
dependencies {
api 'com.tencent.imsdk:imsdk:4.3.118'
}
TUIKit集成
TUIKit 是基于腾讯云 IM SDK 的一款 UI 组件库,里面提供了一些通用的 UI 组件,开发者可通过该组件库选取自己所需要的组件快速的搭建一个 IM 应用。
IM 软件都具备一些通用的 UI 界面,如会话列表,聊天界面等。TUIKit 提供了这一类的组件,并提供了灵活的 UI 和交互扩展接口,方便用户做个性化开发。
TUkit我们不一定要集成,只是说如何有需要的可以去集成
集成的方式:
- 直接依赖它的aar包
- 把aar源码文件拷贝到咱们项目中
我建议用第二种方式,因为TUkit视图实在是过于简洁,很大程度上我们都需要修改,而且功能上我们也要去修改,用aar包方式的话我们不能去更改文件。
如果有朋友对aar不了解,可以看我之前的文章:
https://mp.weixin.qq.com/s/_mgagSBOUetHCXr7qDJjiA
基本操作
1.初始化
可以直接看官网址:
https://cloud.tencent.com/document/product/269/9229
或者我们可以下载云通信IM的demo,然后仿照它的初始化配置也可以的。
2.登录
// identifier为用户名,userSig 为用户登录凭证
TIMManager.getInstance().login(identifier, userSig, new TIMCallBack() {
@Override
public void onError(int code, String desc) {
//错误码 code 和错误描述 desc,可用于定位请求失败原因
//错误码 code 列表请参见错误码表
Log.d(tag, "login failed. code: " + code + " errmsg: " + desc);
}
@Override
public void onSuccess() {
Log.d(tag, "login succ");
}
});
先讲到这里,希望对大家有帮助,下节讲一下具体的功能!
想多了解的朋友可以加我的微信,交个朋友:lengquele5311
大家可以关注我的微信公众号:「秦子帅」一个有质量、有态度的公众号!
公众号
网友评论