Class ReferenceManager

    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      static ReferenceManager getInstance()
      void setReferenceStatusListener(ReferenceManager.ReferenceStatusListener listener)
      void removeReferenceStatusListener(ReferenceManager.ReferenceStatusListener listener)
      void onInit(Context context, String appKey) SDK 初始化。 用户可以在该方法中注册自定义消息、注册消息模板、初始化自己的模块。
      void onAttachedToExtension(Fragment fragment, RongExtension extension) 进入会话后,Extension 加载所有注册的 module。 module 可以持有并使用 Extension.
      void onDetachedFromExtension() 退出会话,Extension 释放所有已加载的 module。 注意:如果 module 持有 Extension 对象,需要在该回调时释放,否则会有内存泄露。
      void onReceivedMessage(Message message) SDK 接收到消息后,通过此方法路由给对应的模块去处理。 用户可以根据自己注册的消息,有选择性的去处理接收到的消息。
      List<IPluginModule> getPluginModules(Conversation.ConversationType conversationType) 用户可以根据不同的会话,配置 “+” 号区域插件。 可以配置一个插件,也可以同时配置多个插件。extension 展示所有返回的插件列表。 注意:如果用户没有配置插件,此方法可以不用实现。
      List<IEmoticonTab> getEmoticonTabs() 在会话中可以配置多个表情 tab,也可以配置单个表情 tab。 配置后,所有的会话中都会显示此 tab。 注意:如果用户没有配置表情,此方法可以不用实现。
      void onDisconnect() SDK 断开连接。
      void onTextChanged(Context context, Conversation.ConversationType type, String targetId, int cursorPos, int count, String text) 输入框文本变化时的回调
      void onSendToggleClick(Message message) Extension 模块点击发送按钮时的预处理,其它模块可以通过此回调设置附加信息到 Extension
      void onDestroy(Conversation.ConversationType type, String targetId)
      boolean showReferenceView(Context context, UiMessage uiMessage) 显示引用消息栏
      boolean showReferenceView(Context context, UiMessage uiMessage, boolean showKeyBoard) 显示引用消息栏
      void hideReferenceView()
      void onDeleteClick(Conversation.ConversationType type, String targetId, EditText editText, int cursorPos)
      UiMessage getUiMessage()
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ReferenceManager

        ReferenceManager()
    • Method Detail

      • onInit

         void onInit(Context context, String appKey)

        SDK 初始化。 用户可以在该方法中注册自定义消息、注册消息模板、初始化自己的模块。

        Parameters:
        context - 上下文
        appKey - 应用唯一 key。
      • onAttachedToExtension

         void onAttachedToExtension(Fragment fragment, RongExtension extension)

        进入会话后,Extension 加载所有注册的 module。 module 可以持有并使用 Extension. 注意:如果 module 持有 Extension 对象,需要在 onDetachedFromExtension 回调时释放,否则会有内存泄露。

        Parameters:
        fragment - Extension 对象所在的 fragment.
        extension - Extension 对象。
      • onDetachedFromExtension

         void onDetachedFromExtension()

        退出会话,Extension 释放所有已加载的 module。 注意:如果 module 持有 Extension 对象,需要在该回调时释放,否则会有内存泄露。

      • onReceivedMessage

         void onReceivedMessage(Message message)

        SDK 接收到消息后,通过此方法路由给对应的模块去处理。 用户可以根据自己注册的消息,有选择性的去处理接收到的消息。

        Parameters:
        message - 消息实体。
      • getPluginModules

         List<IPluginModule> getPluginModules(Conversation.ConversationType conversationType)

        用户可以根据不同的会话,配置 “+” 号区域插件。 可以配置一个插件,也可以同时配置多个插件。extension 展示所有返回的插件列表。 注意:如果用户没有配置插件,此方法可以不用实现。

        Parameters:
        conversationType - 会话类型。
        Returns:

        插件列表。

      • getEmoticonTabs

         List<IEmoticonTab> getEmoticonTabs()

        在会话中可以配置多个表情 tab,也可以配置单个表情 tab。 配置后,所有的会话中都会显示此 tab。 注意:如果用户没有配置表情,此方法可以不用实现。

        Returns:

        表情 tab 列表。

      • onTextChanged

         void onTextChanged(Context context, Conversation.ConversationType type, String targetId, int cursorPos, int count, String text)

        输入框文本变化时的回调

      • onSendToggleClick

         void onSendToggleClick(Message message)

        Extension 模块点击发送按钮时的预处理,其它模块可以通过此回调设置附加信息到 Extension

        Parameters:
        message - extension 模块点击发送按钮时构建的初始消息。其它模块可以更改该消息里的配置。
      • onDestroy

         void onDestroy(Conversation.ConversationType type, String targetId)
      • showReferenceView

         boolean showReferenceView(Context context, UiMessage uiMessage)

        显示引用消息栏

        Parameters:
        context - 上下文
        uiMessage - 消息实体
        Returns:

        是否显示成功

      • showReferenceView

         boolean showReferenceView(Context context, UiMessage uiMessage, boolean showKeyBoard)

        显示引用消息栏

        Parameters:
        context - 上下文
        uiMessage - 消息实体
        Returns:

        是否显示成功

      • onDeleteClick

         void onDeleteClick(Conversation.ConversationType type, String targetId, EditText editText, int cursorPos)