鸿蒙开发之——环信开发之单聊

一 概述

  • 开发环境
  • 环信-鸿蒙资源下载
  • 环信接入准备工作
  • 环信接入流程

二 开发环境

  • 系统:Win 11 专业版 24H2
  • 开发工具:DevEco Studio 5.0.1 Release
  • 开发语言:ArkTS

三 环信-鸿蒙资源下载

3.1 下载说明

1
2
环信官网暂未找到示例项目,只有SDK下载入口
本文不使用SDK方式引入,使用依赖方式引入

3.2 依赖地址

1
@easemob/chatsdk(V1.8.0):https://ohpm.openharmony.cn/#/cn/detail/@easemob%2Fchatsdk

四 环信接入准备工作

4.1 新建鸿蒙默认项目hxdemo

4.2 继承SDK

执行如下指令

1
ohpm install @easemob/chatsdk

4.3 添加项目权限

1
2
3
4
5
6
7
8
9
10
11
12
{
module: {
requestPermissions: [
{
name: "ohos.permission.GET_NETWORK_INFO",
},
{
name: "ohos.permission.INTERNET",
},
],
},
}

图示

五 环信接入流程

5.1 在EntryAbility中初始化SDK

1、初始化代码

1
2
3
4
5
6
7
8
9
10
private handleInit(){
ChatClient.getInstance().init(this.context, {
appKey: "kelvin#ease",
appIDForPush: "YXA6pPR54Os8EeekETmd5XrmIg",
// 关闭自动登录
isAutoLogin: false,
// 其他更多设置
});
}
}

2、appKey和appIDForPush登录控制台后查找或创建

5.2 创建账号或使用已有账号

1
依次点击:即时推送—>用户管理—>创建Push用户

5.3 在Page的生命周期方法中执行登录操作

1
2
3
4
5
6
7
ChatClient.getInstance().login("123456","123456").then(() => {
// success logic
console.log("success")
}).catch((error: ChatError) => {
// failure logic
console.log("fail")
})

5.4 发送单聊信息(点击单聊按钮)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
let message = ChatMessage.createTextSendMessage("123", "聊天消息内容");
if (!message) {
return;
}
message.setChatType(ChatType.Chat);

let callback: ChatCallback = {
onSuccess: (): void => {
// 发送消息成功
console.log("success")
},
onError: (code: number, error: string): void => {
// 发送消息失败
console.log("onError")
},
onProgress: (progress: number): void => {
// 附件消息附件的上传进度
console.log("onProgress")
}
}
message.setMessageStatusCallback(callback);

ChatClient.getInstance().chatManager()?.sendMessage(message);

5.5 单聊结果

1
单聊用户未在线,单聊失败

五 参考

  • OpenHarmony三方库中心仓—chatsdk
  • 环信官方文档—快速开始