Package io.rong.imkit.feature.publicservice

## Class PublicServiceManager

- All Implemented Interfaces:

      public class PublicServiceManager

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `public interface` | `PublicServiceManager.PublicServiceProfileProvider` | PublicServiceProfile提供者。
    `public interface` | `PublicServiceManager.PublicServiceBehaviorListener` | 公众号界面操作的监听器

  - ### 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 PublicServiceManager` | `getInstance()` |
    `void` | `setPublicServiceProfileProvider(PublicServiceManager.PublicServiceProfileProvider publicServiceProfileProvider)` | 设置公众服务账号信息的提供者，供 RongIM 调用获公众服务账号名称，头像信息和公众服务号菜单。 目前 sdk 默认的公众号服务不需要开发者设置，这个接口提供了另外一种从 app 层设置公众服务账号信息的方式 设置后，当 sdk 界面展示用户信息时，会回调 getPublicServiceProfile 使用者只需要根据对应的publicServiceType, publicServiceId 提供对应的公众服务账号信息。 如果需要异步从服务器获取公众服务账号信息，使用者可以在此方法中发起异步请求，然后返回 null 信息。 在异步请求结果返回后，根据返回的结果调用 refreshPublicServiceProfile 刷新公众号信息。
    `void` | `setPublicServiceBehaviorListener(PublicServiceManager.PublicServiceBehaviorListener listener)` | 设置公众号界面操作的监听器。
    `void` | `refreshPublicServiceProfile(PublicServiceProfile publicServiceProfile)` | 刷新公众服务账号缓存数据。
    `void` | `setPublicServiceMenuClickListener(IPublicServiceMenuClickListener menuClickListener)` | 设置公众服务菜单点击监听。 建议使用方法：在进入对应公众服务会话时，设置监听。当退出会话时，重置监听为 null，这样可以防止内存泄露。
    `IPublicServiceMenuClickListener` | `getPublicServiceMenuClickListener()` |
    `PublicServiceProfile` | `getPublicServiceProfile(PublicServiceType publicServiceType, String targetId)` |
    `void` | `)>getPublicServiceProfile(PublicServiceType publicServiceType, String targetId, ResultCallback<PublicServiceProfile> callback)` |
    `PublicServiceManager.PublicServiceBehaviorListener` | `getPubBehaviorListener()` |
    `PublicServiceExtensionModule` | `getExtensionModule()` |

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

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

- - ### Constructor Detail

  - ### Method Detail

    - #### getInstance

           static PublicServiceManager getInstance()

    - #### setPublicServiceProfileProvider

           void setPublicServiceProfileProvider(PublicServiceManager.PublicServiceProfileProvider publicServiceProfileProvider)

      设置公众服务账号信息的提供者，供 RongIM 调用获公众服务账号名称，头像信息和公众服务号菜单。 目前 sdk 默认的公众号服务不需要开发者设置，这个接口提供了另外一种从 app 层设置公众服务账号信息的方式 设置后，当 sdk 界面展示用户信息时，会回调 getPublicServiceProfile 使用者只需要根据对应的publicServiceType, publicServiceId 提供对应的公众服务账号信息。 如果需要异步从服务器获取公众服务账号信息，使用者可以在此方法中发起异步请求，然后返回 null 信息。 在异步请求结果返回后，根据返回的结果调用 refreshPublicServiceProfile 刷新公众号信息。

      Parameters:
        `publicServiceProfileProvider` - 公众服务账号信息的提供者 PublicServiceProfileProvider。

    - #### setPublicServiceBehaviorListener

           void setPublicServiceBehaviorListener(PublicServiceManager.PublicServiceBehaviorListener listener)

      设置公众号界面操作的监听器。

      Parameters:
        `listener` - 会话公众号界面操作的监听器。

    - #### refreshPublicServiceProfile

           void refreshPublicServiceProfile(PublicServiceProfile publicServiceProfile)

      刷新公众服务账号缓存数据。

      Parameters:
        `publicServiceProfile` - 需要更新的公众服务账号缓存数据。

    - #### setPublicServiceMenuClickListener

           void setPublicServiceMenuClickListener(IPublicServiceMenuClickListener menuClickListener)

      设置公众服务菜单点击监听。 建议使用方法：在进入对应公众服务会话时，设置监听。当退出会话时，重置监听为 null，这样可以防止内存泄露。

      Parameters:
        `menuClickListener` - 监听。

    - #### getPublicServiceMenuClickListener

           IPublicServiceMenuClickListener getPublicServiceMenuClickListener()

    - #### getPublicServiceProfile

           PublicServiceProfile getPublicServiceProfile(PublicServiceType publicServiceType, String targetId)

    - #### getPublicServiceProfile

           void )>getPublicServiceProfile(PublicServiceType publicServiceType, String targetId, ResultCallback<PublicServiceProfile> callback)

    - #### getPubBehaviorListener

           PublicServiceManager.PublicServiceBehaviorListener getPubBehaviorListener()

    - #### getExtensionModule

           PublicServiceExtensionModule getExtensionModule()