使用即时通讯(IM)SDK心得体验

简介:

当下最流行的SDK应该就是即时通讯SDK了,尝试了很多都是收费的,偶然间发现了一款免费的即时通讯SDK--MobIM。相对于其他的即时通讯类的SDK接入简单,后台稳定,在线技术支持等,最最重要的是永久免费。
现在我就和大家分享一下这个产品,我觉得对于开发者是一款福利产品呢。
首先需要去Mob官网:mob.com注册成为mob的开发者,并创建自己的应用,得到appkey这些注册信息。
其次是在自己项目的plist文件里完成对mob的注册。
1
下面简单介绍几个核心的接口方法:
1.用户系统映射

[MobSDK setUserWithUid:@"123"
                          nickName:@"小明"
                            avatar:@"http://abc.png"
                          userData:nil];

2.发送消息(已发送文本消息为例,如要发送图片,语音,视频等消息可详细参考mob官方文档,在此就不赘述了.)

/**
初始化文字消息体
 @param text 文字内容@return 文字消息体实例
*/
MIMTextMessageBody *body = [MIMTextMessageBody bodyWithText:@"你好"];
 /**
初始化消息对象
 @param type 会话类型@param to 单聊时,此参数为接收人的appUserId,群聊时,此参数为群组id@param body 消息体@return 消息对象
*/
MIMMessage *message = [MIMMessage messageWithConversationType:MIMConversationTypeSingle
                                                               to:@"123"
                                                             body:body];/**
发送消息
 @param msg 消息对象@param completionHandler 完成回调
*/
[[MobIM getChatManager] sendMessage:message completion:^(MIMMessage *message, MIMError *error) {
    // 在此处理消息发送的回调,error为空时消息发送成功,此时回调回来的message会有相应的信息变更,可以根据回调回来的消息相关信息做对应展示
}];

3.接收消息
MobIM中设计的回调基本采用block形式处理,接收消息也是同样的方式,接收消息示例代码如下:

/**
接收消息时回调
 @param handlerIdentifier 接收消息回调的唯一标识符,该标识不能为空或空字符串,其作用是用于在不需要时进行移除。例如:当进入和某个人聊天界面时需要调用该方法,当返回时“聊天界面控制器”销毁(dealloc)时需要调用下面的方法移除该监听.@param messageHandler 处理接收到的消息block
*/
[[MobIM getChatManager] onMessageReceivedWithIdentifier:@"MobIM" messageHandler:^(MIMMessage *message) {
    NSLog(@"接收到消息: %@", message);
}];

设置了消息接收的监听后,如果不是要作为全局监听来使用的,那么就一定要在不需要的时候移除相应的监听,移除监听代码示例如下:

移除接收到消息的监听block
 
 @param handlerIdentifier block标识符
 */
[[MobIM getChatManager] removeMessageHandlerForIdentifier:@"MobIM"];

希望可以给到有需要的程序员们帮助哈~

目录
相关文章
|
12月前
|
安全 前端开发 关系型数据库
IM即时通讯系统开发技术规则
IM即时通讯系统开发涵盖客户端与服务器端,涉及前端、后端、网络通信及多媒体处理等技术领域,支持文字、语音、图片、视频等多种实时交流方式。开发流程包括需求分析、技术选型、系统设计、开发实现、测试优化及部署维护等阶段,需关注网络通信、多媒体处理、安全性及可扩展性等关键技术点,广泛应用于社交、客服、团队协作及游戏等领域。
|
3月前
|
前端开发 JavaScript 网络安全
Web网页端即时通讯源码/IM聊天源码RainbowChat-Web
RainbowChat-Web是一套基于MobileIMSDK-Web的网页端IM系统。不同于市面上某些开源练手或淘宝售卖的demo级代码,RainbowChat-Web的产品级代码演化自真正运营过的商业产品,其所依赖的通信层核心SDK已在数年内经过大量客户及其辐射的最终用户的使用和验证。RainbowChat-Web同时也是移动端IM应用RainbowChat的姊妹产品。
121 0
|
移动开发 网络协议 小程序
基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v10.0版已发布
RainbowChat是一套基于开源IM即时通讯聊天框架 MobileIMSDK 的产品级移动端IM系统。RainbowChat源于真实运营的产品,解决了大量的屏幕适配、细节优化、机器兼容问题。RainbowChat可能是市面上提供im即时通讯聊天源码的,唯一一款同时支持TCP、UDP两种通信协议的IM产品。与姊妹产品RainbowTalk和RainbowChat-Web 技术同源,历经考验。
14 0
基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v10.0版已发布
|
1月前
|
数据安全/隐私保护 容器 Go
开源IM即时通讯系统调研
Lumen IM 是一款企业级开源即时通讯工具,前端采用 Vue3 + Naive UI,后端基于 Go 语言,使用 WebSocket 协议。支持 Docker + Nginx 快速部署,适合私有化环境。功能包括文本、图片、文件消息,内置笔记、群聊及消息历史记录。界面美观、功能完善,适用于企业沟通、团队协作及开发者学习。提供前后端源码,便于快速搭建 IM 系统。
开源IM即时通讯系统调研
|
1月前
|
移动开发 网络协议 小程序
鸿蒙NEXT即时通讯/IM系统RinbowTalk v2.4版发布,基于MobileIMSDK框架、ArkTS编写
RainbowTalk是一套基于开源即时通讯讯IM框架 MobileIMSDK 的产品级鸿蒙NEXT端IM系统。纯ArkTS编写、全新开发,没有套壳、也没走捷径,每一行代码都够“纯血”。与姊妹产品RainbowChat和RainbowChat-Web 技术同源,历经考验。
75 1
|
2月前
|
缓存 移动开发 网络协议
纯血鸿蒙NEXT即时通讯/IM系统:RinbowTalk正式发布,全源码、纯ArkTS编写
RainbowTalk是一套基于MobileIMSDK的产品级鸿蒙NEXT端IM系统,目前已正式发布。纯ArkTS、从零编写,无套壳、没走捷径,每一行代码都够“纯”(详见:《RainbowTalk详细介绍》)。 MobileIMSDK是一整套开源IM即时通讯框架,历经10年,超轻量级、高度提炼,一套API优雅支持 UDP 、TCP 、WebSocket 三种协议,支持 iOS、Android、H5、标准Java、小程序、Uniapp、鸿蒙NEXT,服务端基于Netty编写。
187 1
|
2月前
|
测试技术 开发工具 git
基于WebSocket即时通讯im源码| uniapp即时通讯源码| 私有化部署SDK视频安装教程
本项目是基于 ThinkPHP7 和 Swoole 构建的即时通讯 IM 源码,打造了一个简洁美观、移动优先的渐进式 Web 应用。支持从源码构建,并提供详细的安装、配置与使用说明。仓库地址:im.jstxym.top。
|
7月前
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
382 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
4月前
|
网络协议 Java 网络安全
全平台开源即时通讯IM聊天框架MobileIMSDK的服务端开发指南,支持鸿蒙NEXT
全平台开源即时通讯IM聊天框架MobileIMSDK的服务端开发指南,支持鸿蒙NEXT
279 4

热门文章

最新文章