简单介绍融云 imkit 包含功能

说明

本篇文章简单介绍一下融云 imkit 包含的功能,大家可在阅读之后来对大体内容有一个基础的了解。详细内容还请翻阅 官方文档

基本内容

融云 imkit 是为了方便开发者快速集成而开发的一套 UI 库,里面主要包含三部分内容:

  • 用户信息

  • 会话列表

  • 会话页面

https://upload-images.jianshu.io/upload_images/9936078-82fcdfbb0d23305d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/500

用户信息

https://upload-images.jianshu.io/upload_images/9936078-4889da3de8911227.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/600

用户信息是指融云 SDK 提供了一套完整的用户信息的显示与存储机制,里面包含了用户信息、群信息、群名片信息,开发者仅仅需要将自己 App Server 内的用户信息包装成一个融云的特有的用户信息对象,然后传递给对应的接口即可。之后融云 SDK 会自己帮助显示对应用户的用户信息,并存储在本地数据库,方便后续的读取。

大体的显示流程可参考官方的流程图:

https://upload-images.jianshu.io/upload_images/9936078-59cbef47185c4083.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

会话列表

https://upload-images.jianshu.io/upload_images/9936078-4bed68ccc5ebc0cf.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

会话列表是融云 SDK 根据消息生成的一个 list

当收到一条新消息并且会话列表没有当前会话的时候,SDK 会自动生成一条新的会话数据,并添加到 tableview 中。

需要注意的是融云的会话列表不会存储在服务器中,只在本地存储。当切换设备时,需要去融云开发者后台开通多设备同步,这样在新设备登录的时候,会触发融云的消息补偿,当移动端接收到消息的时候,会在新设备也生成一个新的会话列表。正常情况就是你设置几天就补偿几天。

支持的功能有:

  • 会话置顶

  • 会话删除

  • 会话免打扰

  • 已读回执显示

  • 有人@显示

会话页面

https://upload-images.jianshu.io/upload_images/9936078-865151c99632ed20.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

融云的会话页面整体可分为两部分

  • 消息展示区

  • 输入框

消息展示

消息展示就是当前用户收发消息展示的地方,和常规 APP 一样,接收在左边,发送在右边。发送方是不显示昵称的,接收方可根据配置来选择是否显示昵称。

SDK 自带的消息展示有

  • 文本消息

  • 语音消息

  • 图片消息

  • GIF 消息

  • 视频消息

  • 位置消息

  • 文件消息

  • 小灰条消息

开发者还能根据自己的需求来自定义其他消息,自定义消息有两种用法:

  1. 发送其他需要展示的消息,对应绑定一套 UI 组件,收到消息后,融云SDK 帮助你把绑定的这套 UI 展示到界面上。

  2. 当做控制消息:控制消息就是你不展示到界面上,但是你可以利用消息机制来做处理,从服务器或者其他地方下发一个指令,收到这个消息后,UI不会发生任何变化。但你可以根据这条消息来处理你的业务操作。比如刷新某个页面,获取某个信息等等

开发者可以继承融云的会话页面,在其子类来进行其他操作,在进入会话页面的时候,SDK 会自动拉取当前会话的历史聊天记录,这个操作会先从本地数据库获取,如果不够 10 条的话,会从服务器获取,需要开通历史消息云存储功能。(融云 SDK 会在本地搭建一套数据库,用来存储你所有的聊天内容)

在获取到历史记录之后,SDK 会自动帮你展示到 消息展示区。展示出来的消息都支持以下功能:

  • 发送出去的消息支持已读回执(单群聊)

  • 消息撤回:kit 默认为两分钟

  • 消息多选

  • 消息转发:支持合并转发

  • 消息引用

  • 消息删除

输入框

SDK 提供的输入框共分为四部分:

  • 文本输入

  • 语音输入

  • 表情

  • 扩展板

文本输入:

文本输入支持用户输入任何文本

群聊输入 @ 可触发@ 人功能

语音输入:

语音输入分为普通语音消息高清语音消息

高清语音消息是在2.9.25之后支持的。建议使用此套方案。

表情:
SDK 有一套默认的 emoji 表情,且支持表情自定义。

扩展板:

扩展板也就是 + 号区域,SDK 默认支持的功能有:

  • 音视频(需要集成 融云音视频,集成之后会自动出现)

  • 照片

  • 位置:支持位置实时共享

  • 语音输入:需要使用科大讯飞的库来做,融云提供了相关的库内容

  • 名片

  • 文件:文件消息是 SDK 下载到指定目录的文件,并非手机系统的文件。

  • 其他:自定义内容,可根据自己的业务添加其他的小内容。

此外,SDK还提供了 常用语功能,目前仅支持单聊,且字数在 30 字以内,可进行类似快捷回复之类的操作。

其他内容,后续补充。

更多详细的内容可自己阅读官网文档。


0 个评论

要回复文章请先登录注册