Skip to content
v1
文档/HarmonyOS SDK/开发指南

HarmonyOS SDK 快速开始

本文档面向首次接入 HarmonyOS SDK 的开发者,目标是用最少步骤跑通 IM 基础链路:初始化、登录、文本消息收发。

前置条件

  • 已获取 appId
  • 业务后台可返回登录 JWT Token

1. 添加依赖

bash
ohpm install @beeworks/imsdk

2. 初始化

建议在应用生命周期早期调用,且仅初始化一次。

ts
const APP_ID: string = 'your-app-id'
IMSdk.init(context, APP_ID, {
  apiUrl: 'http://api.example.com:port',
  imUrl: 'ws://im.example.com:port'
})

3. 设置监听器

快速开始中仅保留 SDK 连接状态监听。

ts
const sdkListener = {
  key: 'quickstart_sdk_listener',
  onConnectionStateChanged: (state) => {
    console.info('[im][state]', state)
  }
}

IMSdk.getInstance().addIMSdkListener(sdkListener)

4. 登录

使用业务后台签发并返回的 JWT Token 登录。

ts
const jwt: string = '<jwt-from-your-backend>'

await IMSdk.getInstance().login(jwt)

5. 收发消息

先注册消息监听器接收新消息,再发送一条文本消息。

ts
const messageListener = {
  key: 'quickstart_message_listener',
  onReceive: (message) => {
    console.info('[im][recv]', message)
  }
}

IMSdk.getInstance().getMessageManager().addMessageListener(messageListener)

const target = new MessageTarget()
target.type = MessageParticipantType.USER
target.id = 'u10002'

const textMessage = await IMSdk.getInstance().getMessageManager().createTextMessage('hello')
await IMSdk.getInstance().getMessageManager().send(target, textMessage)