Android云通信IM系列(1)-集成与配置

前言

因为项目中用到了腾讯云通信,网上云通信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

大家可以关注我的微信公众号:「秦子帅」一个有质量、有态度的公众号!

公众号

推荐阅读更多精彩内容

  • 一、背景随着58同城业务的不断发展,58同城IM业务也在不断地扩充。基于58同城多业务线的特性,58同城的IM业务...
    皮拉夫大王在此阅读 1,121评论 0 21
  • 1.1:融云的分类(简介) 1.1.1:融云 IM 界面组件 - RongCloud IMKit IMKit 是融...
    不一样的色彩阅读 1,138评论 0 1
  • 虽然动手不是太久,但是没想到最近在一个小地方翻了船,一直弄了很久都没有做出来,问题是这样的,最近仿写了一个苹果的导...
    RubbyCherry阅读 562评论 0 0
  • 知一切法,皆悉寂灭。生身烦恼,二余俱尽。 了知一切诸法都空无所有,本来寂灭,但也并非断灭。《维摩诘经》说:“诸法究...
    念佛求生阅读 60评论 0 1
  • 2019.1.12 星期六 广州晴 今天起得有点早,五点就醒来,为期两天的闭关学习,重复学习总是会...
    wu溧蕙阅读 43评论 0 2