美文网首页
融云 IMkit 解析

融云 IMkit 解析

作者: _一叶孤帆 | 来源:发表于2020-10-13 11:55 被阅读0次

    说明

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

    基本内容

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

    • 用户信息
    • 会话列表
    • 会话页面
    image.png

    用户信息

    image.png

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

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

    image.png

    会话列表

    image.png

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

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

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

    支持的功能有:

    • 会话置顶
    • 会话删除
    • 会话免打扰
    • 已读回执显示
    • 有人@显示

    会话页面

    image.png

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

    • 消息展示区
    • 输入框

    消息展示

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

    SDK 自带的消息展示有

    • 文本消息
    • 语音消息
    • 图片消息
    • GIF 消息
    • 视频消息
    • 位置消息
    • 文件消息
    • 小灰条消息

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

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

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

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

    • 发送出去的消息支持已读回执(单群聊)
    • 消息撤回:kit 默认为两分钟
    • 消息多选
    • 消息转发:支持合并转发
    • 消息引用
    • 消息删除

    输入框

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

    • 文本输入
    • 语音输入
    • 表情
    • 扩展板

    文本输入:

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

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

    语音输入:

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

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

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

    扩展板:

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

    • 音视频(需要集成 融云音视频,集成之后会自动出现)
    • 照片
    • 位置:支持位置实时共享
    • 语音输入:需要使用科大讯飞的库来做,融云提供了相关的库内容
    • 名片
    • 文件:文件消息是 SDK 下载到指定目录的文件,并非手机系统的文件。
    • 其他:自定义内容,可根据自己的业务添加其他的小内容。

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

    其他内容,后续补充。

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

    相关文章

      网友评论

          本文标题:融云 IMkit 解析

          本文链接:https://www.haomeiwen.com/subject/qacvpktx.html