关于使用腾讯云腾讯(即时通讯SDK)遇到的问题
公司项目中需要进行服务器控制用户端操作
由于前期规划提出的需求,放弃了推送和WebSocket
然后转换思路使用即时通讯实现C/S,根据通话消息内容进行判断做出相应的操作
好了。不啰嗦开整。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
第一步。上官网
https://cloud.tencent.com/product/im
继续进入控制台
创建应用
创建完事下载SDK,我项目中使用的是V3
下载成功Ctrl目录Libs里的jar包,添加之后记得依赖jar包。这里需要操作一波,关于so文件
在项目的src目录下新建jniLibs目录把so文件考入
然后在app的buildgradle文件中添加
下一步AndroidManifest
添加权限
继续添加提供的Service和Receiver
android:exported="true"
android:process=":QALSERVICE" >
android:exported="false"
android:process=":QALSERVICE" >
android:exported="false">
OK~ 基本工作已经完成开始根据官方文档实现功能吧
---------------------------------------------------------
https://cloud.tencent.com/document/product/269/9229
sdk第一步初始化。不是纸尿布。一瞅美滋滋,单例直接
初始化就稳妥
关于文档的细则大家可以自行阅读我这对部分主要的内容截图展示了
TIMSdkConfig config=new TIMSdkConfig(sdkid);//控制台创建应用对应的sdkidTIMManager.getInstance().init(this,config);
其他设置根据自行选择。我先完成功能
然后大家觉得应该就简单了。但是发生了我写这篇文章的重要原因。因为我没有仔细看文档的内容介绍。所以坑了小半天。
大家可以根据情况选择模式,我这使用了托管模式
直接TLS文档开始,文档中介绍的可以,直接用就可以的,文档内容自行阅读,我这直接提供一个实现方式其他的大家自行测试
String usersign;final TLSHelper tlsHelper=TLSHelper.getInstance();tlsHelper.TLSPwdLogin("用户名", "账号".getBytes(), new TLSPwdLoginListener() { @Override public void OnPwdLoginSuccess(TLSUserInfo tlsUserInfo) { Log.e("Login",tlsUserInfo.toString()); usersign=tlsHelper.getUserSig(tlsUserInfo.identifier); } @Override public void OnPwdLoginReaskImgcodeSuccess(byte[] bytes) { Log.e("Login",bytes.toString()); } @Override public void OnPwdLoginNeedImgcode(byte[] bytes, TLSErrInfo tlsErrInfo) { Log.e("Login",tlsErrInfo.toString()); } @Override public void OnPwdLoginFail(TLSErrInfo tlsErrInfo) { Log.e("Login",tlsErrInfo.toString()); } @Override public void OnPwdLoginTimeout(TLSErrInfo tlsErrInfo) { Log.e("Login",tlsErrInfo.toString()); }});
我们登录需要的sign在这里面获取到了
妥了回到官方文档大家就知道我这么做是干什么了,云通信用户TIMManager登录需要userSig我们就先获取到然后继续操作
退出操作
好了到了最后一步了。给客户端添加消息监听
TIMManager.getInstance().addMessageListener(new TIMMessageListener() { @Override public boolean onNewMessages(Listlist) { Log.e("Get Message",list.toString()); for (int i=0;i
Ok,咱们通过腾讯云通信的后台测试一下,控制台找你的应用选择用户管理
在后台可以手动添加用户,给用户(android app)发送消息
后台打印获取成功,
好了到此关于腾讯云通讯登录到消息接收的内容完成了
更多相关文章
- android OpenGLES开发第二课 为Polygon添加颜色
- android handler机制源码解析【异步回调】
- linux下nessus的安装和使用
- Android向桌面添加快捷方式,使其指向特定的网页
- Android(安卓)Intent原理分析
- android启动activity的详细过程
- 天天记录 - Android(安卓)addView源码分析
- Chromium进程间的通信机制浅析(android版本)(二)
- Android(安卓)中的几个常用控件
随机推荐