TencentIM集成

由于某些原因,公司决定将IM模块由原来的环信变更为腾讯,这样一来,就不得不做大量的工作,由于之前是直接基于环信的EaseUI进行开发的,导致自己的代码跟环信的代码有着相当高的关联度,所以如果要换成腾讯的话就相当于重做很大一部分的工作,并且董事长说可能后面公司要自己研发IM,欸,为了防止以后继续做不必要的工作,就不得不组件一个数据隔层,彻底隔绝第三方代码,这样就不怕后面再出现这样的情况了。好了,闲话不说了,进入主题:集成腾讯im

分模块进行,一步一步来!

一,集成腾讯IM环境


进入官网选择最新的版本进行下载

1.1 将下载的jar包放进libs目录,注意只是jar包放进libs目录,so文件不放在里面,不然会出现找不到so文件的情况,进而导致登陆失败!


JAR包放进libs目录

1.2 SO文件放进jniLibs目录


so文件放入jniLibs文件夹

1.3 清单文件的配置


添加必要的权限

由于Android P彻底废弃了 org.apache.http.legacy.jar,但ImSDK又依赖于这个库,所以需要在manifest的application节点中增加以下配置:

<!-- Android 9.0兼容配置 -->
服务跟广播

二,登陆

腾讯的登陆比环信要麻烦一点,在登陆之前首先要初始化IMSDK

2.1初始化IMSDK


初始化IMSDK

看到上面需要有一个SDK_APPID,这个需要去到腾讯云官网去创建程序申请,

2.1.1 创建自己的项目



创建成功后

点击应用配置进去,出现sdkappid


得到SdkAppId

得到appId后,则可以进行初始化了,但是如果进行登陆,还需要取得签名。

2.1.2 获取签名工具进行签名


获取TLS提供的工具包

我们选择window版,在DOS下进入到拥有tls_licence_tools.exe程序的目录,我这里是tools目录。在继续进行下去之前,我们需要去刚刚在腾讯云上下载公钥跟私钥(我这里采用的是独立模式)。


下载公私钥

这里我将私钥复制到我的tools目录,也就是含有tls_licence_tools.exe程序的目录,这样方便后面生成sig

在dos下转到含有tls_licence_tools.exe程序的目录后,开始使用下列命令生成签名文件。


生成sig

解释一下上面的意思,其中在windows下,我们近需要改变三个参数:private_key 1400040122 pjsong

private_key是我们在刚刚放进去的私钥,1400040122是SdkAppId,pjsong是用户名

回车之后,会在目录底下生成签名文件,dos出现generate sig ok


生成sig文件成功


生成sig文件成功

2.2 开始登陆


开始调用登陆方法

上面的userSig就是sig文件中的字符串:


sig文件

运行程序,登陆成功:


登陆成功
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,707评论 25 709
  • 部分内容转载自搜狗百科 cmd是command的缩写.即命令提示符(CMD),是在OS / 2 , Windows...
    青冥之上阅读 2,429评论 0 24
  • 2017.2.14我拖箱来学校,第一晚失眠了,和多年的老同学聊了好久,发现大家都在前进,就我一个停滞不前,不知所措...
    木夏暖阅读 176评论 0 0
  • 创建全国文明城市的号角已经吹响,支队、大队层层动员、厉兵秣马,各项整治行动如火如荼相继开展。 为配合文...
    市中特勤阅读 563评论 0 0
  • 如果可以选择,我希望来生我们可以没有任何关系。在写下这句话的时候,各种的情绪在心里充斥着,眼眶里满含的是心疼你的泪...
    王冷静阅读 271评论 0 0