Package io.rong.imkit.conversation.extension

## Class RongExtensionManager

- All Implemented Interfaces:

      public class RongExtensionManager

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---

  - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `static RongExtensionManager` | `getInstance()` |
    `void` | `init(Context context, String appKey)` | 初始化，SDK 在初始化时已调用此方法，用户不需要再调用。
    `IExtensionConfig` | `getExtensionConfig()` |
    `void` | `setExtensionConfig(IExtensionConfig extensionConfig)` | 设置输入栏相关配置。
    `void` | `registerExtensionModule(IExtensionModule extensionModule)` | 注册自定义的 IExtensionModule,注册后，可以通过 getExtensionModules 获取已注册的 module
        注意：
        1. 请在 SDK 初始化后 init，调用此方法注册自定义 IExtensionModule
        2. 一定要在进入会话界面之前调此方法
    `void` | `registerExtensionModule(int index, IExtensionModule extensionModule)` |
    `void` | `addExtensionModule(IExtensionModule extensionModule)` | 添加自定义的 IExtensionModule,添加后，可以通过 getExtensionModules 获取已注册的 module
        注意：
        1. 此方法只是把自定义IExtensionModule加入到IExtensionModule列表,不会调用onInit}
        2. 注册请使用registerExtensionModule
        3. 此方法适用于IExtensionModule的排序
    `void` | `unregisterExtensionModule(IExtensionModule extensionModule)` | 注销 IExtensionModule 模块
        注意：
        1. 请在 SDK 初始化后 init )}，调用此方法反注册注册 IExtensionModule
        2. 一定要在进入会话界面之前调次方法
    `List<IExtensionModule>` | `getExtensionModules()` | 获取已注册的模块。
    `void` | `addExtensionEventWatcher(IExtensionEventWatcher watcher)` |
    `void` | `removeExtensionEventWatcher(IExtensionEventWatcher watcher)` |
    `List<IExtensionEventWatcher>` | `getExtensionEventWatcher()` |
    `void` | `disconnect()` | SDK 断开连接时，已调用此方法，用户不需要再次调用。

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

  - ### Method Detail

    - #### getInstance

           static RongExtensionManager getInstance()

    - #### init

           void init(Context context, String appKey)

      初始化，SDK 在初始化时已调用此方法，用户不需要再调用。

      Parameters:
        `context` - 应用上下文.
        `appKey` - 应用 key.

    - #### getExtensionConfig

           IExtensionConfig getExtensionConfig()

    - #### setExtensionConfig

           void setExtensionConfig(IExtensionConfig extensionConfig)

      设置输入栏相关配置。

    - #### registerExtensionModule

           void registerExtensionModule(IExtensionModule extensionModule)

      注册自定义的 IExtensionModule,注册后，可以通过 getExtensionModules 获取已注册的 module

          注意：
          1. 请在 SDK 初始化后 init，调用此方法注册自定义 IExtensionModule
          2. 一定要在进入会话界面之前调此方法

      Parameters:
        `extensionModule` - 自定义模块。

    - #### registerExtensionModule

           void registerExtensionModule(int index, IExtensionModule extensionModule)

    - #### addExtensionModule

           void addExtensionModule(IExtensionModule extensionModule)

      添加自定义的 IExtensionModule,添加后，可以通过 getExtensionModules 获取已注册的 module

          注意：
          1. 此方法只是把自定义IExtensionModule加入到IExtensionModule列表,不会调用onInit}
          2. 注册请使用registerExtensionModule
          3. 此方法适用于IExtensionModule的排序

      Parameters:
        `extensionModule` - 自定义模块。

    - #### unregisterExtensionModule

           void unregisterExtensionModule(IExtensionModule extensionModule)

      注销 IExtensionModule 模块

          注意：
          1. 请在 SDK 初始化后 init )}，调用此方法反注册注册 IExtensionModule
          2. 一定要在进入会话界面之前调次方法

      Parameters:
        `extensionModule` - 已注册的 IExtensionModule 模块

    - #### getExtensionModules

           List<IExtensionModule> getExtensionModules()

      获取已注册的模块。

      Returns:

        已注册的模块列表

    - #### addExtensionEventWatcher

           void addExtensionEventWatcher(IExtensionEventWatcher watcher)

    - #### removeExtensionEventWatcher

           void removeExtensionEventWatcher(IExtensionEventWatcher watcher)

    - #### getExtensionEventWatcher

           List<IExtensionEventWatcher> getExtensionEventWatcher()

    - #### disconnect

           void disconnect()

      SDK 断开连接时，已调用此方法，用户不需要再次调用。