# 集成工作台界面

协作中台 SDK 支持工作台的集成，工作台功能如下：

- 工作台支持设置banner页，用于宣传企业文化、开展运营活动、发布新闻公告等。

- 协作中台基于企业办公场景协作应用，如会议/日历/公告等。

- 支持「企业自建应用」，通过金山协作开放平台集成OA、ERP等第三方系统。

## 效果展示

<img src="https://cloudcdn.qwps.cn/open/_img/77d0bc6e27.jpeg" style="width:300px;"/>

可以通过两种方式集成会话列表页面：

- KIMWorkSpaceActivity，直接包含了 KIMWorkSpaceFragment 的 Activity 界面，可以通过 ` KIM.getService().goPage(KIM``WorkSpace``Fragment::class.java.getPageName(), this, Bundle()) `启动

- KIMWorkSpaceFragment，接入方可以将该 Fragment 嵌入自己的 Activity，直接创建 KIMWorkSpaceFragment, 并通过 fragmentManager 添加到自定义的 Activity 中

## 接口定义

::: code-group



```kotlin [Kotlin]
KIM.getService().goPage(pageName: String, context: Context?, args: Bundle)
```



:::

## 参数说明

| 参数     | 类型    | 说明                                                                |
| :------- | :------ | :------------------------------------------------------------------ |
| pageName | string  | 这里固定值： <br/> `KIMWorkSpaceFragment::class.java.getPageName()` |
| context  | Context |                                                                     |
| args     | Bundle  |                                                                     |

## 代码示例

- 直接使用`KIMWorkSpaceActivity`

::: code-group



```kotlin [Kotlin]
KIM.getService().goPage(KIMWorkSpaceFragment::class.java.getPageName(), this, Bundle())
```



:::

- 使用`KIMWorkSpaceFragment`，接入方可以将该 `Fragment` 嵌入自己的 `Activity`，直接创建 `KIMWorkSpaceFragment`, 并通过 `fragmentManager` 添加到自定义的 `Activity` 中。

1. 自定义 `Activity` 并将 `Fragment` 加入到 `Activity` 中。

::: code-group



```kotlin [Kotlin]
class IntegrateWorkspacePageActivity : BaseActivity() {

    private lateinit var binding: ActivityIntegrateWorkspacePageBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityIntegrateWorkspacePageBinding.inflate(layoutInflater)
        setContentView(binding.root)
            val fragment = KIMWorkSpaceFragment()
            fragment.arguments = intent.getBundleExtra(Router.EXTRA_DATA)
            supportFragmentManager.beginTransaction()
                .add(binding.integrateWorkspaceContainer.id, fragment)
                .commitAllowingStateLoss()
    }
}
```



:::

> 请注意在 Manifest 完成注册

2. 启动 Activity

::: code-group



```kotlin [Kotlin]
startActivity(Intent(this, IntegrateWorkspacePageActivity::class.java))
```



:::